diff options
author | Steve French <sfrench@us.ibm.com> | 2005-10-20 13:44:56 -0700 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2005-10-20 13:44:56 -0700 |
commit | 23e7dd7d95f6fdc167a6d6ddea79ced0af33bbff (patch) | |
tree | dc7f5947df09eaca23c25a4d4a908e4dfe81cf40 /fs/cifs/inode.c | |
parent | 84d2f07e8e5e2424eec0f5acfef6792c924a0549 (diff) |
[CIFS] Defer close of file handle slightly if there are pending writes that
need to get in ahead of it that depend on that file handle. Fixes
occassional bad file handle errors on write with heavy use multiple process
cases.
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/inode.c')
-rw-r--r-- | fs/cifs/inode.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/cifs/inode.c b/fs/cifs/inode.c index ff4d1cc7c24..912d401600f 100644 --- a/fs/cifs/inode.c +++ b/fs/cifs/inode.c @@ -1006,6 +1006,7 @@ int cifs_setattr(struct dentry *direntry, struct iattr *attrs) __u32 npid = open_file->pid; rc = CIFSSMBSetFileSize(xid, pTcon, attrs->ia_size, nfid, npid, FALSE); + atomic_dec(&open_file->wrtPending); cFYI(1,("SetFSize for attrs rc = %d", rc)); if(rc == -EINVAL) { int bytes_written; |