Re: [PATCHv6 3/5] ext4: remove unnecessary superblock dirtying

From: Jan Kara
Date: Wed Jul 11 2012 - 06:11:45 EST


On Wed 11-07-12 12:07:26, Jan Kara wrote:
> On Wed 11-07-12 12:58:16, Artem Bityutskiy wrote:
...
> > And this is the behavior this patch modifies: we stop using 's_dirt' and just
> > mark the superblock buffer as dirty right away. Indeed:
> >
> > 1. It does not add any value to delay the I/O submission for cases 1-3 above.
> > They are rare.
> > 2. Case number 4 above depends on whether we have file-system checksumming
> > enabled or disables.
> > a) If it is disabled (most common scenario), then it is all-right to just
> > mark the superblock buffer as dirty right away and it should affect
> > performance.
> > b) If it is enabled, then we'll end up doing a bit more work on deletion
> > because we'll re-calculate superblock checksum every time.
> >
> > So case 2.b is a bit controversial, but I think it is acceptable. After all, by
> > enabling checksumming we already sign up for paying the price of calculating
> > it. The way to improve checksumming performance globally would be to calculate
> > it just before sending buffers to the I/O queue. We'd need some kind of
> > call-back which could be registered by file-systems.
Actually, the most common case of adding orphan inode used
ext4_handle_dirty_super_now() so for that case there is no difference. And
other cases are so rare it really does not matter... So there shouldn't be
any measurable difference.

Honza
--
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/