From: Derrick Brashear Date: Tue, 26 Jul 2011 04:52:18 +0000 (-0400) Subject: macos: don't attempt finalize fixup on root vnode X-Git-Tag: upstream/1.6.0^2~77 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=ed89a0b0e7980d2c42bb64c59c71f6d7ca2d1e33;p=packages%2Fo%2Fopenafs.git macos: don't attempt finalize fixup on root vnode because of how the root fid is created we can end up being dumb. turns out we never want to bypass doing the full pass for root anyway so just force fixup to not happen. Reviewed-on: http://gerrit.openafs.org/5095 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear (cherry picked from commit f8ff2591f73401e6d9b6def7630f428569e2f3a6) Change-Id: I2196196d7373400f2d7f6d0654047273157df1ee Reviewed-on: http://gerrit.openafs.org/5097 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- diff --git a/src/afs/DARWIN/osi_vnodeops.c b/src/afs/DARWIN/osi_vnodeops.c index 8dc8b85ef..e16505a0b 100644 --- a/src/afs/DARWIN/osi_vnodeops.c +++ b/src/afs/DARWIN/osi_vnodeops.c @@ -2164,8 +2164,8 @@ afs_darwin_finalizevnode(struct vcache *avc, struct vnode *dvp, ovp = AFSTOV(avc); /* if the type changed, we still need to do a fixup, for bulkstat */ - if (vnode_vtype(ovp) == avc->f.m.Type && !(avc->f.states & CDeadVnode) - && vnode_vtype(ovp) != VNON) + if (!isroot && (vnode_vtype(ovp) == avc->f.m.Type && + !(avc->f.states & CDeadVnode) && vnode_vtype(ovp) != VNON) { AFS_GUNLOCK(); #if 0 /* unsupported */