Date: Thu, 6 Dec 2012 08:23:07 +0100 From: "J. Hannken-Illjes" <hann...@eis.cs.tu-bs.de>
Looks like this thread is dead. No one beside David Holland is interested and David objects. I take back my proposal. I'm interested, but I haven't fit enough of the vnode life cycle or the fstrans mechanism into my head to assess how well it is likely to work, and I don't think it's a good strategy in general to put more boilerplate into every vop implementation -- there is far too much boilerplate already that lots of vop implementations get wrong. As a step toward fixing the first problem, could you perhaps write down the rules about how fstrans currently composes with vnode locks and operations and life cycle? I seem to recall there was some issue a year or so ago about the ordering of vput and fstrans_done in ufs_rmdir, and the nature of the issue wasn't clear to me from the man pages or a cursory examination of the source, which suggested to me that I don't understand fstrans well enough to reason about patches like this.