From owner-freebsd-fs Wed May 3 7: 1: 5 2000 Delivered-To: freebsd-fs@freebsd.org Received: from ewok.creative.net.au (ewok.creative.net.au [203.30.44.82]) by hub.freebsd.org (Postfix) with SMTP id EB07937B76C for ; Wed, 3 May 2000 07:01:00 -0700 (PDT) (envelope-from freebsd@ewok.creative.net.au) Received: (qmail 78681 invoked by uid 1008); 3 May 2000 14:00:55 -0000 Date: Wed, 3 May 2000 22:00:55 +0800 From: Adrian Chadd To: Bjoern Groenvall Cc: freebsd-fs@FreeBSD.ORG Subject: Re: A proposal : IFS Message-ID: <20000503220053.D53701@ewok.creative.net.au> References: <20000503040431.B53701@ewok.creative.net.au> <20000503185457.C53701@ewok.creative.net.au> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.95.4i In-Reply-To: ; from Bjoern Groenvall on Wed, May 03, 2000 at 02:45:30PM +0200 Sender: owner-freebsd-fs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Wed, May 03, 2000, Bjoern Groenvall wrote: > Adrian Chadd writes: > > > An application which keeps an internal database of objects->filenames > > would simply continue to do so, but the filename is simply the inode number. > > WHen creating a file, it opens 'newfile' for create/write, which creates > > a new file. It then stat()s the fd to get the inode number, and records > > that. In squid case, it eliminates the need for keeping a bitmap of > > used file entries, since the FS does this anyway. > > What about using fhopen and getfh instead? That way you won't have to > write a new filesystem. You will have to use file handles rather than > inode numbers though. You still need to do a directory lookup in getfh(), and IFS filesystems take far less time to fsck. There was once a hack floating about for Linux and FreeBSD which patched VOP_LOOKUP() to take a special filename and treat it as an inode number- it was designed for INN where once you opened a news article, you'd keep the inode number in memory and use that. But you still had the ondisk directory metadata and unlink()s couldn't be done with the inode number magic sequence, which is why I took it a step further and wrote IFS. Adrian To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message