Return-Path: Sender: Trond Myklebust From: Trond Myklebust To: Benjamin Coddington , Anna Schumaker Cc: linux-nfs@vger.kernel.org Subject: [PATCH v7 00/10] Fix OPEN/CLOSE races Date: Mon, 6 Nov 2017 10:27:16 -0500 Message-Id: <20171106152726.13755-1-trond.myklebust@primarydata.com> MIME-Version: 1.0 List-ID: v2: - Fix a sleep-while-atomic issue - Clean up. - Add a tracepoint to help document wait incidents. v3: - Fix a state update issue v4: - Fix a race due to setting the state->flags before waiting on another compound (can cause issues if the other compound has an OPEN_DOWNGRADE). - Fix stateid seqid wraparound. v5: - Fix race with wakeup after clearing NFS_STATE_CHANGE_WAIT - Fix CLOSE, DELEGRETURN and LAYOUTRETURN issues with NFS4ERR_OLD_STATEID, which were causing stateid leakage - cleanups - Fix a typo in nfs_rename... v6: - Fix a compile issue when CONFIG_NFS_V4_1=n v7: - Fix a typo in nfs4_refresh_open_stateid (thanks Andrew Elble) - Minor cleanups in nfs4_close_done, nfs4_delegreturn_done, nfs4_layoutreturn_done. Trond Myklebust (10): NFSv4: Fix OPEN / CLOSE race NFSv4: Add a tracepoint to document open stateid updates NFSv4: Fix open create exclusive when the server reboots NFS: Fix a typo in nfs_rename() NFSv4: Retry CLOSE and DELEGRETURN on NFS4ERR_OLD_STATEID. NFSv4: Don't try to CLOSE if the stateid 'other' field has changed pNFS: Retry NFS4ERR_OLD_STATEID errors in layoutreturn-on-close NFSv4: Retry NFS4ERR_OLD_STATEID errors in layoutreturn NFSv4: cleanup nfs4_close_done NFSv4: Clean up nfs4_delegreturn_done fs/nfs/delegation.c | 27 +++++ fs/nfs/delegation.h | 1 + fs/nfs/dir.c | 2 +- fs/nfs/nfs4_fs.h | 7 ++ fs/nfs/nfs4proc.c | 292 +++++++++++++++++++++++++++++++++++++--------------- fs/nfs/nfs4state.c | 26 ++++- fs/nfs/nfs4trace.h | 2 + fs/nfs/pnfs.c | 18 ++++ fs/nfs/pnfs.h | 5 + 9 files changed, 293 insertions(+), 87 deletions(-) -- 2.13.6