Re: [patch] pagecache-2.3.9-H3, bmap & ext2fs cleanup patch

Linus Torvalds (torvalds@transmeta.com)
Sat, 26 Jun 1999 12:51:30 -0700 (PDT)


On Sat, 26 Jun 1999, Ingo Molnar wrote:
>
> oh, i see. (i was used to setting this in the fs, this is why i missed it)
> I think encoding holes in this way is bad, it will prevent legitimate uses
> of the very same bit-combination: (!Mapped && Uptodate) will be useful if
> we'll ever do 'delayed allocation' of filesystem blocks, it will represent
> pretty ordinary blocks which are not yet mapped to the filesystem.

Give me one valid reason to ever do that, please..

There isn't. The _only_ thing "!Mapped && Uptodate && !Dirty" can mean is
a hole.

I agree that we might some day want to have buffers "Uptodate && Dirty"
that haven't been mapped yet, but that is not a hole, that's just a
delayed write. So let me modify my original claim to be that "Hole" is
useless, because it is exactly the same as

"!Mapped && !Dirty && Uptodate"

Ok?

There's no way the above can make any sense any other way than as a hole
in the filesystem. As it's not dirty, it must have either been written out
already (and we must have allocated a block for it on disk), or it must
have been read in some way (and we must have found out where on the disk
the real copy is). In both cases it would imply that we must have had
access to the mapping information, so the only thing that makes sense to
have !Mapped is a hole.

Linus

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