Date: Fri, 8 Jun 2001 13:01:28 -0400 From: Alfred Perlstein <bright@rush.net> To: Peter Wemm <peter@wemm.org> Cc: tlambert2@mindspring.com, "Patrick W. Penzias Dirks" <pwd@apple.com>, FreeBSD-FS@FreeBSD.ORG, FreeBSD-Arch@FreeBSD.ORG Subject: Re: Support for pivot_root-like system call? Message-ID: <20010608130128.E1832@superconductor.rush.net> In-Reply-To: <20010608153011.D7AF1380C@overcee.netplex.com.au>; from peter@wemm.org on Fri, Jun 08, 2001 at 08:30:11AM -0700 References: <3B2096AB.309B2D14@mindspring.com> <20010608153011.D7AF1380C@overcee.netplex.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
* Peter Wemm <peter@wemm.org> [010608 11:30] wrote: > Terry Lambert wrote: > > "Patrick W. Penzias Dirks" wrote: > > > > > > Hi, > > > > > > I'm the filesystems tech lead in Apple's Mac OS X Core OS group. > > > Prompted by the needs of, among others, virus protection software > > > developers who want to be able to mount "on" the root directory to > > > intercept ALL filesystem calls in the system, I'm contemplating > > > implementation of a new system call in Mac OS X to do something like > > > Linux's pivot_root system call: > > > > > > int pivot_root(const char *new_root, const char *put_old); > > > > > > (which basically installs "new_root" as the new "/" [root_vnode] in > > > the system and transfers the current root directory to the pathname > > > specified my "put_old") > > > > It doesn't work in FreeBSD proper because of cache coherency > > bugs that have been around since 1995, but: > > > > mount -t nullfs / /put_old # or wherever > > mount -t <whatever> / > > > > Would do what you want, I think. > > Terry, the 'cache coherency' bugs have been fixed in -current for ~8 > months now (September 2000). The infrastructure changes for this are > subject to a call-for-review right now for a merge to 4.x. The cache coherency bugs are not fixed for all cases, being able to ask the underlying filesystem for the vm_object does not solve the problem. What if i have a stacking layer where each page alternates between two files that i'm stacked on top of? Passing the vm_object back doesn't work for this. Unless something else has been done. -Alfred Perlstein [alfred@freebsd.org] Instead of asking why a piece of software is using "1970s technology," start asking why software is ignoring 30 years of accumulated wisdom. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010608130128.E1832>