URGENT: [diagnostic] cache_lock: blocked on 0xda5265a8 ""
Matthew Dillon
dillon at apollo.backplane.com
Wed Aug 29 21:45:51 PDT 2007
::
::Please let me know whats happening. its pretty urgent, as it has just
::happened again.
::
::petr
Well. How interesting. I think I found it. It looks like the NFS
mount point vnode is becoming stale. It wasn't releasing the vnode
before attempting to re-resolve the node.
Please try this patch and tell me if it works. How many days does it
usually take for it to hit the bug?
-Matt
Index: kern/vfs_syscalls.c
===================================================================
RCS file: /cvs/src/sys/kern/vfs_syscalls.c,v
retrieving revision 1.112.2.1
diff -u -p -r1.112.2.1 vfs_syscalls.c
--- kern/vfs_syscalls.c 26 Jan 2007 18:55:31 -0000 1.112.2.1
+++ kern/vfs_syscalls.c 30 Aug 2007 04:40:51 -0000
@@ -2117,14 +2117,14 @@ * If the file handle is stale we have
* is a hack at the moment.
*/
if (error == ESTALE) {
+ vput(vp);
cache_setunresolved(&nd->nl_nch);
error = cache_resolve(&nd->nl_nch, nd->nl_cred);
- if (error == 0) {
- vput(vp);
+ if (error == 0)
goto again;
- }
+ } else {
+ vput(vp);
}
- vput(vp);
return (error);
}
More information about the Kernel
mailing list