]> git.baikalelectronics.ru Git - kernel.git/commit
NFSv4: Fix a regression in nfs_set_open_stateid_locked()
authorTrond Myklebust <trond.myklebust@hammerspace.com>
Wed, 27 Oct 2021 01:56:40 +0000 (21:56 -0400)
committerTrond Myklebust <trond.myklebust@hammerspace.com>
Wed, 27 Oct 2021 19:24:46 +0000 (15:24 -0400)
commit06c4424e00f9e551271f82eaf3069beaccf06470
tree7a3f503617d617826ba05892c9f2c5af11a86a20
parentfb8dbc628c9ae9195dde5eed83a303d81d9e9a80
NFSv4: Fix a regression in nfs_set_open_stateid_locked()

If we already hold open state on the client, yet the server gives us a
completely different stateid to the one we already hold, then we
currently treat it as if it were an out-of-sequence update, and wait for
5 seconds for other updates to come in.
This commit fixes the behaviour so that we immediately start processing
of the new stateid, and then leave it to the call to
nfs4_test_and_free_stateid() to decide what to do with the old stateid.

Fixes: ea6614d1b979 ("NFSv4: Wait for stateid updates after CLOSE/OPEN_DOWNGRADE")
Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
fs/nfs/nfs4proc.c