[OpenAFS] AFS_Cache partition unmountable after AFS shutdown

chas williams chas@cmf.nrl.navy.mil
Thu, 06 Sep 2001 11:23:57 -0400


>This is because Open AFS calls dput() after calling calling
>gop_lookupname (osi_lookupname). Should be calling path_release()
>b'cos osi_lookupname calls path_init() for Linux 2.4.

actually, there's an ifdef that does path_release() instead of dput()
for the linux 2.4 kernels.  i think derek is right about leaking
resource information though.  if i start afs and immediately shutdown
it does work.  if i use it for a while though i cant shutdown cleanly
(although sometimes it will still shutdown)

although looking more closely at the code i suspect that the 
path_release should NOT be conditional and it should always 
occur:

--- osi_misc.c.orig     Thu Sep  6 11:22:01 2001
+++ osi_misc.c  Thu Sep  6 11:23:38 2001
@@ -51,9 +51,8 @@
        if (nd.dentry->d_inode) {
            *dpp = nd.dentry;
            code = 0;
-       }
-       else
-           path_release(&nd);
+        }
+        path_release(&nd);
     }
 #else
     if (seg == AFS_UIOUSER) {