NFSv4 flock regression

Calls to flock(2) on an NFSv4 mounted filesystem are hanging while filling the logs with:

    kernel: nfs4_reclaim_open_state: Lock reclaim failed!
       
These errors cause the system log file to grow very large, raising the possibility of the root filesystem running out of space.

Environment:

  • Red Hat Enterprise Linux 6.3 - 6.4
  • kernel 2.6.32-279.22.1 or kernel 2.6.32-358.el6
  • NFSv4 Client
  • Any NFS server
NOTE: Red Hat Enterprise Linux 5 is not affected by this issue (as of kernel 2.6.18-348.el5)

Resolution:

Workarounds

  • Downgrade to 2.6.32-279.19.1
  • Use NFSv3 instead of NFSv4
Red Hat engineering is currently tracking fixes for RHEL 6.3 and 6.4 z-streams, as well has RHEL 6.5.

Root Cause:

Regression introduced by a small portion of one of the commits required to fix Bugzilla 842435

commit a1d0b5eebc4fd6e0edb02688b35f17f67f42aea5
Author: Trond Myklebust 
Date:   Mon Mar 5 19:56:44 2012 -0500

    NFS: Properly handle the case where the delegation is revoked



@@ -4415,7 +4426,9 @@ out:

static int nfs4_proc_setlk(struct nfs4_state *state, int cmd, struct file_lock *request)
 {
-       struct nfs4_exception exception = { };
+       struct nfs4_exception exception = {
+               .state = state,
+       };
        int err;

        do {

        


Back to top...

 

+ Recent posts