lkml.org 
[lkml]   [2000]   [Mar]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: (reiserfs) Re: reiserfs and knfsd and NFSv4 and volatile file handles
Alexander Viro wrote:
>
> On Thu, 16 Mar 2000, Hans Reiser wrote:
>
> > Alexander Viro wrote:
> > >
> > > On Wed, 15 Mar 2000, Hans Reiser wrote:
> > >
> > > > Not sure I understand your question, but I'll take a stab at it. Currently the
> > > > first directory a file is created in stays its packing locality parent for the
> > > > life of the file. The packing locality parent is the first key component. So,
> > > > currently, if you know the parent directory id the file was created in you know
> > > > the first component of the key, and the last component of the key is the offset
> > > > which you can also know. This leaves the middle of the key unknown.
> > >
> > > Ouch. What happens if you
> > > mkdir foo
> > > create foo/bar
> > > rename foo/bar baz/bar
> > > rmdir foo
> >
> > packing locality is foo.
>
> Even though inode of foo is gone? OK, fine with me. Do you mean that your
> "locality" is roughly an equivalent of cylinder group on FFS?

The objects in the tree are fully ordered by their keys. The packing locality
is the first component of the key. The bitmap.c algorithms, when assigning
blocks to nodes of the tree, put new nodes in the first free block after the
block holding the left neighbor in this tree ordering of the new node.

>
> > I believe your other questions were answered in other emails, not all by me.
> > Correct me if I err in this.
>

I leave the below for Alexei and Vladimir to answer in detail. Generally
speaking, we can only do clean effective SMP after implementing per buffer
seals. I see that as unlikely to make it into 2.4 due to it requiring a per
buffer/page fs specific struct, but it is actively being coded by Zarochentcev
and Roma. If 2.4 is slow enough in coming out, maybe we will submit it just in
case Linus will take it. Our SMP will be poor until we have it.

> Umm... I'd still like to hear a description of your internal locking. In
> particular, what do you lock/release upon reiserfs_find_entry()/pathrelse()?
> When do you rebalance the tree? How do you do serialization between that
> and things a-la write_inode()/readdir()/lookup()? Currently locking is
> masked by the VFS one and that's one of the reasons why I want to see
> cleaned variant.

--
You can get ReiserFS at http://devlinux.org/namesys, and customizations and
industrial grade support at reiser@idiom.com.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:57    [W:0.113 / U:0.228 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site