Date: Fri, 16 Feb 2007 16:36:56 +0200 From: Kostik Belousov <kostikbel@gmail.com> To: Robert Watson <rwatson@freebsd.org> Cc: Josef Karthauser <joe@freebsd.org>, hackers@freebsd.org, Jeremie Le Hen <jeremie@le-hen.org>, fs@freebsd.org Subject: Re: nullfs and named pipes. Message-ID: <20070216143656.GM39168@deviant.kiev.zoral.com.ua> In-Reply-To: <20070216125007.D38234@fledge.watson.org> References: <20070204023711.GA3393@genius.tao.org.uk> <20070215135750.GR64768@obiwan.tataz.chchile.org> <20070215152259.GA2950@genius.tao.org.uk> <20070215153135.GI39168@deviant.kiev.zoral.com.ua> <20070216125007.D38234@fledge.watson.org>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] On Fri, Feb 16, 2007 at 12:54:39PM +0000, Robert Watson wrote: > > On Thu, 15 Feb 2007, Kostik Belousov wrote: > > >On Thu, Feb 15, 2007 at 03:22:59PM +0000, Josef Karthauser wrote: > >>On Thu, Feb 15, 2007 at 02:57:50PM +0100, Jeremie Le Hen wrote: > >>> > >>>Note that all processes within a jail can only intefere with processes > >>>from another jail or host as if they were on different machines. This > >>>means they can communicate through PF_INET for instance but not PF_LOCAL. > >> > >>You might think so! However that's not what's going on here. > >> > >>The named pipe/nullfs issue is nothing to do with jails. It's just that > >>nullfs is broken with respect to named pipes as I've previously reported. > >>However with this patch: > >> > >> cvs diff: Diffing . > >> Index: null_subr.c > >> =================================================================== > >> RCS file: /home/ncvs/src/sys/fs/nullfs/null_subr.c,v > >> retrieving revision 1.48.2.1 > >> diff -u -r1.48.2.1 null_subr.c > >> --- null_subr.c 13 Mar 2006 03:05:17 -0000 1.48.2.1 > >> +++ null_subr.c 14 Feb 2007 00:02:28 -0000 > >> @@ -235,6 +235,8 @@ > >> xp->null_vnode = vp; > >> xp->null_lowervp = lowervp; > >> vp->v_type = lowervp->v_type; > >> + if (vp->v_type == VSOCK || vp->v_type == VFIFO) > >> + vp->v_un = lowervp->v_un; > > > >I'm wondering is some reference counting needed there ? > > Yes, I find this a bit worrying also, but I don't know enough about how > nullfs works to reason about it. What happens when a vnode in the bottom > layer has its on-disk reference count drop to zero -- is the vnode in the > top layer invalidated somehow? Vnode reclamation from lower layer cannot do anithing for corresponding nullfs vnode, but that vnode has reference from nullfs vnode. On the other hand, can forced unmount proceed for lower layer ? [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQFF1cGHC3+MBN1Mb4gRAmbnAJ4rZL3YjmoJjaBDku4KTaq8fBPSbQCcDAsr S6l/UoJLOLDXyGST6j7MVjM= =1gZf -----END PGP SIGNATURE-----home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070216143656.GM39168>
