cifs: always update the inode cache with the results from a FIND_*
authorJeff Layton <jlayton@redhat.com>
Fri, 6 Jul 2012 11:09:42 +0000 (07:09 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 29 Jul 2012 15:04:17 +0000 (08:04 -0700)
commitf952e137849253c0584a60cc2d73a220d9a091f8
treeee16ccce6d0c45da200249eb8199f44f5bdb0d07
parentd8ae4bb4a1c12f9cfb373f215e624a9f1fca0767
cifs: always update the inode cache with the results from a FIND_*

commit cd60042cc1392e79410dc8de9e9c1abb38a29e57 upstream.

When we get back a FIND_FIRST/NEXT result, we have some info about the
dentry that we use to instantiate a new inode. We were ignoring and
discarding that info when we had an existing dentry in the cache.

Fix this by updating the inode in place when we find an existing dentry
and the uniqueid is the same.

Reported-and-Tested-by: Andrew Bartlett <abartlet@samba.org>
Reported-by: Bill Robertson <bill_robertson@debortoli.com.au>
Reported-by: Dion Edwards <dion_edwards@debortoli.com.au>
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/cifs/readdir.c