From owner-freebsd-arch@FreeBSD.ORG Thu Jun 19 01:58:37 2003 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A7D1137B401; Thu, 19 Jun 2003 01:58:37 -0700 (PDT) Received: from stork.mail.pas.earthlink.net (stork.mail.pas.earthlink.net [207.217.120.188]) by mx1.FreeBSD.org (Postfix) with ESMTP id B4E4D43FA3; Thu, 19 Jun 2003 01:58:36 -0700 (PDT) (envelope-from tlambert2@mindspring.com) Received: from user-2ivfk2f.dialup.mindspring.com ([165.247.208.79] helo=mindspring.com) by stork.mail.pas.earthlink.net with asmtp (SSLv3:RC4-MD5:128) (Exim 3.33 #1) id 19SvFa-0002fR-00; Thu, 19 Jun 2003 01:58:35 -0700 Message-ID: <3EF17AEC.D3AC9D3F@mindspring.com> Date: Thu, 19 Jun 2003 01:57:16 -0700 From: Terry Lambert X-Mailer: Mozilla 4.79 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 To: "Marc G. Fournier" References: <20030618112226.GA42606@fling-wing.demos.su> <20030618121620.GG835@starjuice.net><20030618231640.T8920@hub.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-ELNK-Trace: b1a02af9316fbb217a47c185c03b154d40683398e744b8a40faa8c204324bffae55c50f52f33395d387f7b89c61deb1d350badd9bab72f9c350badd9bab72f9c cc: Dmitry Sivachenko cc: Poul-Henning Kamp cc: "Tim J. Robbins" cc: arch@FreeBSD.org Subject: Re: cvs commit: src/sys/fs/nullfs null.h null_subr.c null_vnops.c X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Jun 2003 08:58:38 -0000 "Marc G. Fournier" wrote: > On Thu, 19 Jun 2003, Tim J. Robbins wrote: > > At least one of the sections is well-deserved: umapfs is horribly broken > > on -current, and only works by accident on previous releases. I'm > > actually considering putting an even stronger warning on that one. The > > others (null and union) aren't nearly as bad, and have been fixed > > significantly since the notice was put on the manpages. > > what is umapfs? I don't have a man page for that one on my 4.x box ... ? The umapfs attempts to map user ids between one namespace and another, such as you might need to do when merging a company, each with a UNIX box, with intersecting UID sets with collisions (i.e. is uid 105 "john" or "frank"?). Using umapfs, you can have both "john" and "frank" keep their local accounts, and for network mounts, translate the uid space to present a different view on it. The umapfs is actually just another toy FS (per my other posting inre: unionfs-not-union and nullfs). You could easily "fix" umapfs by copying the nullfs code, and using the underlying vmobject_t's directly via VOP_GETVOJECT, since there is no data associated with the upper vnode that's not in the lower vnode. The translation and lookup would need to be done in two more places than it is now, so there would be a slightly increased performance penalty over that of unionfs. The only thing you really care about is the credentials, which can be crdup/crmod on the way down, and the stat information when can be reverse translated and passed back up. This would probably take about a day to implement, and it would be a good introduction to the code for anyone who thinks there aren't real problems that can't be avoided without some architectural changes. -- Terry