[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <48E225AC.9090208@sun.com>
Date: Tue, 30 Sep 2008 17:12:12 +0400
From: Alex Tomas <bzzz@....com>
To: Theodore Tso <tytso@....edu>
Cc: Andreas Dilger <adilger@....com>, linux-ext4@...r.kernel.org
Subject: Re: Potential bug in mballoc --- reusing data blocks before txn commit
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@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists