diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-04-04 15:08:02 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-04-19 16:53:33 -0400 |
commit | 536ff0f809b0f4d56e1c41e66768d330668e0a55 (patch) | |
tree | fa2b17cc442227d5157b644d8b3fe188b4922983 /fs | |
parent | 4a9af59fee0701d9db99bc148d87b8852d6d6dd8 (diff) | |
download | op-kernel-dev-536ff0f809b0f4d56e1c41e66768d330668e0a55.zip op-kernel-dev-536ff0f809b0f4d56e1c41e66768d330668e0a55.tar.gz |
NFSv4: Ensure we don't corrupt fl->fl_flags in nfs4_proc_unlck
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfs/nfs4proc.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index 9f2759d..a106932 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c @@ -3263,6 +3263,7 @@ static int nfs4_proc_unlck(struct nfs4_state *state, int cmd, struct file_lock * struct nfs4_lock_state *lsp; struct rpc_task *task; int status = 0; + unsigned char fl_flags = request->fl_flags; status = nfs4_set_lock_state(state, request); /* Unlock _before_ we do the RPC call */ @@ -3286,6 +3287,7 @@ static int nfs4_proc_unlck(struct nfs4_state *state, int cmd, struct file_lock * status = nfs4_wait_for_completion_rpc_task(task); rpc_put_task(task); out: + request->fl_flags = fl_flags; return status; } |