From owner-freebsd-fs Wed Aug 7 22:25:38 2002 Delivered-To: freebsd-fs@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 83B7837B400 for ; Wed, 7 Aug 2002 22:25:35 -0700 (PDT) Received: from magic.adaptec.com (magic.adaptec.com [208.236.45.80]) by mx1.FreeBSD.org (Postfix) with ESMTP id D622B43E75 for ; Wed, 7 Aug 2002 22:25:34 -0700 (PDT) (envelope-from scottl@btc.adaptec.com) Received: from redfish.adaptec.com (redfish.adaptec.com [162.62.50.11]) by magic.adaptec.com (8.10.2+Sun/8.10.2) with ESMTP id g785OeG29747; Wed, 7 Aug 2002 22:24:40 -0700 (PDT) Received: from btc.btc.adaptec.com (btc.btc.adaptec.com [10.100.0.52]) by redfish.adaptec.com (8.8.8+Sun/8.8.8) with ESMTP id WAA29946; Wed, 7 Aug 2002 22:24:39 -0700 (PDT) Received: from hollin.btc.adaptec.com (hollin [10.100.253.56]) by btc.btc.adaptec.com (8.8.8+Sun/8.8.8) with ESMTP id XAA03017; Wed, 7 Aug 2002 23:24:36 -0600 (MDT) Received: from hollin.btc.adaptec.com (localhost [127.0.0.1]) by hollin.btc.adaptec.com (8.12.5/8.12.5) with ESMTP id g785LAjF047654; Wed, 7 Aug 2002 23:21:10 -0600 (MDT) (envelope-from scottl@hollin.btc.adaptec.com) Received: (from scottl@localhost) by hollin.btc.adaptec.com (8.12.5/8.12.5/Submit) id g785L9iZ047653; Wed, 7 Aug 2002 23:21:09 -0600 (MDT) Date: Wed, 7 Aug 2002 23:21:09 -0600 From: Scott Long To: Kelly Yancey Cc: Terry Lambert , "David E. Cross" , fs@freebsd.org, guptar@cs.rpi.edu Subject: Re: vnodes (UFS journaling)? Message-ID: <20020808052109.GC47545@hollin.btc.adaptec.com> References: <3D51BE6F.298F0AF@mindspring.com> <20020807214625.C667-100000@gateway.posi.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20020807214625.C667-100000@gateway.posi.net> User-Agent: Mutt/1.4i Sender: owner-freebsd-fs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org On Wed, Aug 07, 2002 at 09:57:42PM -0700, Kelly Yancey wrote: > On Wed, 7 Aug 2002, Terry Lambert wrote: > > > Kelly Yancey wrote: > > > > > > I believe he is trying to keep a journal, likely as a file on the > > > filesystem that is being journalled. I don't actually know, but that's > > > what I would guess. > > > > I understand that he's working on a journalling FS. > > > > I'm wondering what reaccessing vnodes has to do with journalling? > > > > A vnode is an in-core abstract representation of a file in > > a file system, that has a non-abstract real file association > > in the FS itself. A vnode doesn't know about the journalling > > taking place in the underlying FS -- and *shouldn't* know > > about it. The VFS interface layer is intended as a method of > > abstracting *exacly* this sort of implementation detail. > > > [ snip ] > > Yeah, I've read the Red Book too. :) I would guess that the vnode in > question is the vnode representing the journal file itself. How you journal > filesystem operations to a file on that very filesystem is beyond me, but I'm > sure the bright boys at RPI have figured it out...barring the problem that > David wrote -fs about and which we have conveniently neglected to answer. :) > > Kelly > I'll chime in and say that, as much as it pains me to admit, Terry is right =-). Manipualting the journal file from the vnode layer is the wrong way to go about this. However, if you want to push forward in a quick-n-dirty manner right now, you could probably hack up ufs_lookup() to not return a vnode for the journal file. Then you can keep your reference on the vnode and not worry about contention. That said, I'd really looking forward to seeing the results of your work. Scott To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message