Re: [PATCH v1 0/9] do not use s_dirt in ext4

From: Artem Bityutskiy
Date: Thu Mar 22 2012 - 07:23:10 EST


On Thu, 2012-03-22 at 11:33 +0100, Jan Kara wrote:
> > However, if there is _no_ journal, the 'write_super' is initialized, and
> > in many places the 's_dirt' flag is set, and thus VFS services seem to
> > be actively used.
> Which many places are you speaking about? Grep shows 4 places with
> sb->s_dirt = 1;

Well, with 'ext4_mark_super_dirty()' there are still 6 or something
places.

> You remove two of those in your cleanups so only
> __ext4_handle_dirty_super() remains. That is called from 3 (4 after your
> cleanups) places and they happen so rarely (during filesystem resize or
> when we start using some feature on the filesystem) that if you use
> sync_buffer() from all of them, it should be fine.

But AFAIKC, the whole '__ext4_handle_dirty_super()' also falls-back to
marking the superblock as dirty if the file-system has no journal for
some reasons, right?. But I do not really understand what
'ext4_handle_valid()' does. If I grep for 'ext4_handle_dirty_super()' -
there are many places places where it is used, and a few are obviously
for the superblocks.


--
Best Regards,
Artem Bityutskiy

Attachment: signature.asc
Description: This is a digitally signed message part