Re: fsync on large files

Alexander Viro (viro@math.psu.edu)
Thu, 18 Feb 1999 12:47:20 -0500 (EST)


On Thu, 18 Feb 1999, Raul Miller wrote:

> Alexander Viro <viro@math.psu.edu> wrote:
> > > > mkdir a
> > > > mkdir b
> > > > mkdir a/c
> > > > ln a/c b/c
> > > > mkdir a/c/d
> > > > mv b a/c/d
>
> On Thu, 18 Feb 1999, Raul Miller wrote:
> > > You might be able to get away with having a list of parents structure
> > > on multiply linked directories, which would have to be mirrored in
> > > dcache.
>
> Alexander Viro <viro@math.psu.edu> wrote:
> > And backtracing all possible ways?
>
> We don't need all permutations, just all ancestors.
>
> > And that means sucking *all* parents (and their parents, etc.)
> > into dcache on a lookup.
>
> We already have to do this. Just don't confuse the existence of a
> directory in the dcache with the existence of every path to that directory
> being in the dcache. It should be fine to have just the first path to
> the directory in the dcache -- as long as this also is true for every
> ancestor directory.

And on rename() you will rebuild that data. How? Again, direct ancestors
may be even not in dcache yet when you do the first lookup.
What kind of data structure are you going to use?

-
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/