From owner-freebsd-current Mon Oct 20 03:56:02 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id DAA15067 for current-outgoing; Mon, 20 Oct 1997 03:56:02 -0700 (PDT) (envelope-from owner-freebsd-current) Received: from dyson.iquest.net (dyson.iquest.net [198.70.144.127]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id DAA15049 for ; Mon, 20 Oct 1997 03:55:55 -0700 (PDT) (envelope-from toor@dyson.iquest.net) Received: (from root@localhost) by dyson.iquest.net (8.8.7/8.8.5) id FAA01099; Mon, 20 Oct 1997 05:55:35 -0500 (EST) From: "John S. Dyson" Message-Id: <199710201055.FAA01099@dyson.iquest.net> Subject: Re: nullfs & current In-Reply-To: <406.877333677@critter.freebsd.dk> from Poul-Henning Kamp at "Oct 20, 97 09:47:57 am" To: phk@critter.freebsd.dk (Poul-Henning Kamp) Date: Mon, 20 Oct 1997 05:55:35 -0500 (EST) Cc: toor@dyson.iquest.net, roberto@keltia.freenix.fr, current@FreeBSD.ORG X-Mailer: ELM [version 2.4ME+ PL31 (25)] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: owner-freebsd-current@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk Poul-Henning Kamp said: > In message <199710200143.UAA05747@dyson.iquest.net>, "John S. Dyson" writes: > >Ollivier Robert said: > >> According to John S. Dyson: > >> > The VM system holds a reference. You have to do a vnode_pager_uncache whe > >n > >> > deleting a file. > >> > >> Wait... Isn't ufs_remove() supposed to do that ? ufs_remove() is called by > >> null_bypass() by an indirect call (VCALL()) and it seemed safe to consider > >> that the lower level was supposed to DTR. > >> > >> Do I have to create a null_remove() function in order to call > >> vnode_pager_uncache inside it ? > >> > >nullfs should really share the VM object with the lower filesystem, but genera > >lly > >what you say is true, even if you don't share the object. The complexity is > >one reason that I haven't fixed it. It IS fixable reasonably though. > > No, this is wrong. Nullfs can only share the VM object if the > permissions are the same, consider a read-only mounted nullfs for > instance. > The VM object should be shared to maintain coherency. Permissions are maintained by the VM_MAP layer. Objects are mosly globs of data. For some apps, an object can be RO, and others RW. -- John dyson@freebsd.org jdyson@nc.com