diff options
author | Jeff Layton <jlayton@redhat.com> | 2011-01-07 11:30:27 -0500 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2011-01-09 23:43:00 +0000 |
commit | 20054bd65703f7504a9daceabc2a060828fde36c (patch) | |
tree | a15151a2d3a1d8abe1c72701ceb3e9f7051fe6ea /fs/cifs/cifsfs.c | |
parent | d44a9fe2c8af3fee8edb203e9b11e507851c50fa (diff) | |
download | op-kernel-dev-20054bd65703f7504a9daceabc2a060828fde36c.zip op-kernel-dev-20054bd65703f7504a9daceabc2a060828fde36c.tar.gz |
cifs: use CreationTime like an i_generation field
Reduce false inode collisions by using the CreationTime like an
i_generation field. This way, even if the server ends up reusing
a uniqueid after a delete/create cycle, we can avoid matching
the inode incorrectly.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/cifsfs.c')
-rw-r--r-- | fs/cifs/cifsfs.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c index 5abfeda..5e7075d 100644 --- a/fs/cifs/cifsfs.c +++ b/fs/cifs/cifsfs.c @@ -329,6 +329,8 @@ cifs_alloc_inode(struct super_block *sb) cifs_inode->invalid_mapping = false; cifs_inode->vfs_inode.i_blkbits = 14; /* 2**14 = CIFS_MAX_MSGSIZE */ cifs_inode->server_eof = 0; + cifs_inode->uniqueid = 0; + cifs_inode->createtime = 0; /* Can not set i_flags here - they get immediately overwritten to zero by the VFS */ |