Philip, > > Could you show us the locked vnodes for these two cases please ? > > Unfortunately, 'blank' in both cases. But that might be because I never get > to the debugger 'while' it's unmounting, but always when it has tried and not > succeeded. (I have WITNESS in my kernel, if that matters?). > > Is there any way I can either try to unmount the filesystem manually from the > debugger or make the unmounting code more chatting about what it's waiting > for? > > I've had a look through the unionfs and unmount code but filesystems look like > a maze of twisty passages in four dimensions without a map or compass nearby. I don't think that having a snapshot of locked vnode when union_unmount() is called would inform us further. However, I you want to try, you just have to drop to DDB, set a breakpoint on union_unmount() (typing "break union_unmount") and then try the unmount (you can delete the breakpoint by simply using "delete union_unmount"). One thing you can do is compiling your kernel with DIAGNOSTIC enabled and set the sysctl debug.busyprt to 1. This will print informations on each busy vnode when you will be trying to unmount the filesystem : %%% vflush: busy vnode 0xc2a68990: tag ufs, type VDIR usecount 2, writecount 0, refcount 3 mountedhere 0 flags (VV_ROOT) VI_LOCKed ino 2, on dev md0 %%% -- Jeremie Le Hen < jeremie at le-hen dot org >< ttz at chchile dot org >Received on Thu Jun 23 2005 - 12:21:07 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:37 UTC