From owner-freebsd-current Mon Sep 11 10:55:05 1995 Return-Path: current-owner Received: (from majordom@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id KAA27345 for current-outgoing; Mon, 11 Sep 1995 10:55:05 -0700 Received: (from dyson@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id KAA27336 ; Mon, 11 Sep 1995 10:55:05 -0700 From: John Dyson Message-Id: <199509111755.KAA27336@freefall.freebsd.org> Subject: Re: Is nullfs broken in -current? To: terry@lambert.org (Terry Lambert) Date: Mon, 11 Sep 1995 10:55:04 -0700 (PDT) Cc: jkh@time.cdrom.com, current@freefall.freebsd.org In-Reply-To: <199509111730.KAA18629@phaeton.artisoft.com> from "Terry Lambert" at Sep 11, 95 10:30:14 am X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 1696 Sender: current-owner@FreeBSD.org Precedence: bulk > > The NFS locking is currently being worked on. The last report I heard > was that it was to the point of being able to take and ignore all > requests, such that Sun machines wuit their bitching. I've rolled > some additional fixes for handle-to-open-file-instance conversion > using a callback registration mechanism only when NFS is loaded. > That is not the locking that I am talking about. I am talking about the VOP_LOCK entry points (not related.) The problem with implementing VOP_LOCK properly is that nfs operations have to be locked differently than ffs. (Otherwise nfs timeouts don't happen correctly, and other evil things occur.) I have a fix that practically eliminates the concurrency problems in nfs. > The getpage/putpage stuff doesn't seem to be a particularly profound > change for anything but the page management, which is as it should be, > considering the file system framework still wants to be able to share > the majority of code between FreeBSD/NetBSD/Other systems. > The page management needs to be filtered by the other filesystem layers. For "leaf" type filesystems there is some default handling in the vnode_pager. REMEMBER, we have a *fully* merged VM/Buffer cache!!! For layered filesystems, there needs to be some special stuff. (nullfs should share the VM objects with the underlying filesystem for example.) Also we still have compatibility with the older less effective clustering, and non-merged VM/Buffer cache filesystems. For example, ext2fs was almost not a port, but practically dropped right in. I have a few more things to do to fix it though (there is code missing to make certain VM operations work correctly.) John dyson@root.com