diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-01-02 16:27:16 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2008-01-03 09:37:17 -0500 |
commit | e6e21970baff4845de74584e2efc8c964a55d574 (patch) | |
tree | 4a0b5f709ca2892d6babadd47baad7c9f0f8ec7d /fs/eventpoll.c | |
parent | bb22629ee87eed5054f8b508dbe7c58abad0a324 (diff) | |
download | linux-stable-e6e21970baff4845de74584e2efc8c964a55d574.tar.gz linux-stable-e6e21970baff4845de74584e2efc8c964a55d574.tar.bz2 linux-stable-e6e21970baff4845de74584e2efc8c964a55d574.zip |
NFSv4: Fix open_to_lock_owner sequenceid allocation...
NFSv4 file locking is currently completely broken since it doesn't respect
the OPEN sequencing when it is given an unconfirmed lock_owner and needs to
do an open_to_lock_owner. Worse: it breaks the sunrpc rules by doing a
GFP_KERNEL allocation inside an rpciod callback.
Fix is to preallocate the open seqid structure in nfs4_alloc_lockdata if we
see that the lock_owner is unconfirmed.
Then, in nfs4_lock_prepare() we wait for either the open_seqid, if
the lock_owner is still unconfirmed, or else fall back to waiting on the
standard lock_seqid.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/eventpoll.c')
0 files changed, 0 insertions, 0 deletions