Skip to content
  1. Aug 17, 2023
  2. Jul 02, 2023
    • Benjamin Coddington's avatar
      NFSv4: Fix dropped lock for racing OPEN and delegation return · 1cbc11aa
      Benjamin Coddington authored
      Commmit f5ea1613
      
       ("NFSv4: Retry LOCK on OLD_STATEID during delegation
      return") attempted to solve this problem by using nfs4's generic async error
      handling, but introduced a regression where v4.0 lock recovery would hang.
      The additional complexity introduced by overloading that error handling is
      not necessary for this case.  This patch expects that commit to be
      reverted.
      
      The problem as originally explained in the above commit is:
      
          There's a small window where a LOCK sent during a delegation return can
          race with another OPEN on client, but the open stateid has not yet been
          updated.  In this case, the client doesn't handle the OLD_STATEID error
          from the server and will lose this lock, emitting:
          "NFS: nfs4_handle_delegation_recall_error: unhandled error -10024".
      
      Fix this by using the old_stateid refresh helpers if the server replies
      with OLD_STATEID.
      
      Suggested-by: default avatarTrond Myklebust <trondmy@hammerspace.com>
      Signed-off-by: default avatarBenjamin Coddington <bcodding@redhat.com>
      Signed-off-by: default avatarTrond Myklebust <trond.myklebust@hammerspace.com>
      1cbc11aa
  3. Jun 30, 2023
  4. Jun 20, 2023
  5. Jun 19, 2023