Theodore Tso wrote:
On Tue, Sep 30, 2008 at 08:35:21AM +0400, Alex Tomas wrote:
why we need a tree? at least for the purpose of keeping blocks unavailable
we'd need just a list as at commit we free them all.
For ext4, the only reason to use a tree would be to allow us to merge
deleted extents. This might not be worth the complexity, though, I
admit it.
strictly speaking, extents code should have merged them at allocation time.
The other thing which I should check is that if we are using this
scheme, I think we shouldn't need to keep the shadow copy of the block
bitmap buffers any more. I would imagine we still need them for the
inode bitmaps, for the same reason, though.
shadow copy holds preallocated blocks
Are we talking about the same thing? I was referring to the
jh->b_committed_data, which isn't used by mballoc at all.
oops. I meant in-core bitmap mballoc generates. if there is intention
to get rid of old allocator (balloc.c), then we don't need b_committed_data.
btw, I've just remembered why I decided don't protect data from reallocation:
in data=writeback one can get block with stale data easily. and many people
(to my knowledge) were using data=writeback as performing better.
thanks, Alex
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html