diff options
author | Aurelien Aptel <aaptel@suse.com> | 2016-09-22 07:38:50 +0200 |
---|---|---|
committer | Steve French <smfrench@gmail.com> | 2016-10-12 12:08:32 -0500 |
commit | 94f873717571c759b7928399cbbddfa3d569bd01 (patch) | |
tree | ff38b19308a37d3bafabe8f3b04022f427cd0f41 /fs | |
parent | fa70b87cc6641978b20e12cc5d517e9ffc0086d4 (diff) |
fs/cifs: keep guid when assigning fid to fileinfo
When we open a durable handle we give a Globally Unique
Identifier (GUID) to the server which we must keep for later reference
e.g. when reopening persistent handles on reconnection.
Without this the GUID generated for a new persistent handle was lost and
16 zero bytes were used instead on re-opening.
Signed-off-by: Aurelien Aptel <aaptel@suse.com>
CC: Stable <stable@vger.kernel.org>
Signed-off-by: Steve French <smfrench@gmail.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/cifs/smb2ops.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c index 5ed591d7fff3..91e53df4e420 100644 --- a/fs/cifs/smb2ops.c +++ b/fs/cifs/smb2ops.c @@ -541,6 +541,7 @@ smb2_set_fid(struct cifsFileInfo *cfile, struct cifs_fid *fid, __u32 oplock) server->ops->set_oplock_level(cinode, oplock, fid->epoch, &fid->purge_cache); cinode->can_cache_brlcks = CIFS_CACHE_WRITE(cinode); + memcpy(cfile->fid.create_guid, fid->create_guid, 16); } static void |