aix mount failure unlock and seterror
authorDerrick Brashear <shadow@dementia.org>
Fri, 19 Mar 2010 00:17:02 +0000 (20:17 -0400)
committerDerrick Brashear <shadow@dementia.org>
Mon, 22 Mar 2010 22:08:27 +0000 (15:08 -0700)
set an error usefully and drop the vfs lock

Change-Id: I9d901b50722c09e1b131077f0b19e2831e6a44c8
Reviewed-on: http://gerrit.openafs.org/1590
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>

src/afs/AIX/osi_vfsops.c

index b2cd97e..a3dd50f 100644 (file)
@@ -66,8 +66,10 @@ afs_mount(afsp, path, data)
     afsp->vfs_fsid.val[1] = AFS_VFSFSID;
 
     /* For AFS, we don't allow file over file mounts. */
-    if (afsp->vfs_mntdover->v_type != VDIR)
-       return (ENOTDIR);
+    if (afsp->vfs_mntdover->v_type != VDIR) {
+       AFS_VFSUNLOCK();
+       return (setuerror(ENOTDIR));
+    }
     /* try to get the root vnode, but don't worry if you don't.  The actual
      * setting of the root vnode (vfs_mntd) is done in afs_root, so that it
      * get re-eval'd at the right time if things aren't working when we