From owner-freebsd-afs@FreeBSD.ORG Wed Jan 16 20:33:11 2008 Return-Path: Delivered-To: freebsd-afs@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A1D2B16A494; Wed, 16 Jan 2008 20:33:11 +0000 (UTC) (envelope-from jhutz@cmu.edu) Received: from jackfruit.srv.cs.cmu.edu (JACKFRUIT.SRV.CS.CMU.EDU [128.2.201.16]) by mx1.freebsd.org (Postfix) with ESMTP id 5D7F413C455; Wed, 16 Jan 2008 20:33:11 +0000 (UTC) (envelope-from jhutz@cmu.edu) Received: from atlantis.pc.cs.cmu.edu (ATLANTIS.PC.CS.CMU.EDU [128.2.216.110]) (authenticated bits=0) by jackfruit.srv.cs.cmu.edu (8.13.6/8.13.6) with ESMTP id m0GImqOi012702 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 16 Jan 2008 13:48:53 -0500 (EST) Date: Wed, 16 Jan 2008 13:48:52 -0500 From: Jeffrey Hutzelman To: Robert Watson , "Jason C. Wells" Message-ID: <876FB8E38251C27B14CCCA29@atlantis.pc.cs.cmu.edu> In-Reply-To: <20080114142124.Y55696@fledge.watson.org> References: <18CC5A4A2AC36D7FF57615EE@ganymede.hub.org> <478AF6BC.8050604@highperformance.net> <20080114142124.Y55696@fledge.watson.org> X-Mailer: Mulberry/4.0.8 (Linux/x86) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Mailman-Approved-At: Wed, 16 Jan 2008 21:08:45 +0000 Cc: rra@stanford.edu, rees@umich.edu, port-freebsd@openafs.org, freebsd-fs@FreeBSD.org, matt@linuxbox.com, freebsd-afs@FreeBSD.org, openafs-devel@openafs.org, freebsd-questions@FreeBSD.org, jhutz@cmu.edu Subject: Re: [OpenAFS-devel] Re: AFS ... or equivalent ... X-BeenThere: freebsd-afs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: The Andrew File System and FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Jan 2008 20:33:11 -0000 --On Monday, January 14, 2008 02:23:47 PM +0000 Robert Watson wrote: > I'd like very much to get at least the kernel parts of an AFS client into > the base system. That may well be realistic for arla, though I believe there was a period for a while where the kernel/arlad interface was evolving to support features like chunking. I pay only superficial attention to arla-drinkers, so I don't know what the status of any of that is; for that, you'd have to ask someone who is actively involved in arla development (I believe there are some such people on this list). It is unlikely ever to happen for OpenAFS, in which virtually all of the cache manager code is in-kernel and most of it is cross-platform. Trying to pull the OpenAFS cache manager into the FreeBSD kernel would be equivalent to forking OpenAFS; what you'd get would work and would keep up with FreeBSD, but it would be unlikely to keep up with OpenAFS. The "let's just slurp everything into the main distribution so we don't have to worry about stable interfaces" approach is really poor. It encourages bad engineering practice among people maintaining the main distribution, discourages innovation and extension by others, and generally doesn't scale. It's far better to either attempt to maintain stable external interfaces to the VFS and VM subsystems, or else admit that you don't have the resources to do so given the relatively small number of external users, in which case you almost certainly also don't have the resources to keep on top of updates to something like OpenAFS. In the long run, I'm guessing that the OpenAFS cache manager evolves more quickly than FreeBSD's VFS interface, which makes pulling the CM into the kernel tree a losing battle. If you disagree, by all means fork that part of AFS (or get someone else to do so) and see what happens (AFS's user/kernel and RPC interfaces are both fairly stable, so forking just the kernel parts should be mostly feasible). -- Jeff