diff options
author | NeilBrown <neilb@cse.unsw.edu.au> | 2005-07-07 20:59:22 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-07-07 21:24:09 -0400 |
commit | 444c2c07c2d7a6936d1381d381ab80e3f5541427 (patch) | |
tree | b4dc8b6ccc33208b39d01b8505c4a759b6ebdf7b /fs/nfsd | |
parent | e66770cd7b0c36f28a2f6eb0957c0575ac8b3787 (diff) |
[PATCH] nfsd4: always update stateid on open
An OPEN from the same client/open stateowner requires a stateid update because
of the share/deny access update.
Signed-off-by: Andy Adamson <andros@citi.umich.edu>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/nfsd')
-rw-r--r-- | fs/nfsd/nfs4state.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index 386daac508f5..b96714ae3dd7 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c | |||
@@ -1820,6 +1820,7 @@ nfsd4_process_open2(struct svc_rqst *rqstp, struct svc_fh *current_fh, struct nf | |||
1820 | status = nfs4_upgrade_open(rqstp, current_fh, stp, open); | 1820 | status = nfs4_upgrade_open(rqstp, current_fh, stp, open); |
1821 | if (status) | 1821 | if (status) |
1822 | goto out; | 1822 | goto out; |
1823 | update_stateid(&stp->st_stateid); | ||
1823 | } else { | 1824 | } else { |
1824 | /* Stateid was not found, this is a new OPEN */ | 1825 | /* Stateid was not found, this is a new OPEN */ |
1825 | int flags = 0; | 1826 | int flags = 0; |