[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1176242364.309.69.camel@heimdal.trondhjem.org>
Date: Tue, 10 Apr 2007 17:59:24 -0400
From: Trond Myklebust <trond.myklebust@....uio.no>
To: Neil Brown <neilb@...e.de>
Cc: Theodore Tso <tytso@....edu>,
Jörn Engel <joern@...ybastard.org>,
"H. Peter Anvin" <hpa@...or.com>,
Christoph Hellwig <hch@...radead.org>,
Ulrich Drepper <drepper@...il.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: If not readdir() then what?
On Wed, 2007-04-11 at 07:37 +1000, Neil Brown wrote:
> On Tuesday April 10, trond.myklebust@....uio.no wrote:
> > On Wed, 2007-04-11 at 07:12 +1000, Neil Brown wrote:
> > >
> > > Is there something that makes that interface problematic?
> >
> > File deletions...
>
> How are they a problem ?
>
> There are only two ways to organise a directory.
> 1/ Unsorted linear list of entries in which no repacking is ever done.
> 2/ Some data structure using an ordered search key that is based on
> the filename (e.g. a B-tree with a search key that is a hash of the
> filename).
>
> In the first case, you just use a fixed opaque cookie for location in
> a directory.
> In the second you use the filename. If the file has been deleted,
> that shouldn't stop you finding the place where it would have been in
> the overall sort order.
I beg to differ. RAMFS is an instance of a filesystem which uses an
unsorted linear list of entries which is automatically repacked when you
delete a file.
You may also have filesystems which are only partially sorted. The
dcache is for instance organised as a hashtable with multiple entries
per bucket...
Cheers
Trond
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists