On Sun 30-09-12 16:30:26, Ted Tso wrote:
> The rewritten commit description:
>
> ext4: fix mtime update in nodelalloc mode
>
> Commits 5e8830dc85d0 and 41c4d25f78c0 introduced a regression into
> 3.6-rc1 for ext4 in nodealloc mode, such that mtime updates would not
> take place for files modified via mmap if the page was already in the
> page cache. This would also affect ext3 file systems mounted using
> the ext4 file system driver.
>
> The problem was that ext4_page_mkwrite() had a shortcut which would
> avoid calling __block_page_mkwrite() under some circumstances, and the
> above two commit transferred the responsibility of calling
> file_update_time() to __block_page_mkwrite --- which woudln't get
> called in some circumstances.
>
> Since __block_page_mkwrite() only has three callers,
> block_page_mkwrite(), ext4_page_mkwrite, and nilfs_page_mkwrite(), the
> best way to solve this is to move the responsibility for calling
> file_update_time() to its caller.
>
> This problem was found via xfstests #215 with a file system mounted
> with -o nodelalloc.
>
> Signed-off-by: "Theodore Ts'o" <[email protected]>
> Cc: Jan Kara <[email protected]>
> Cc: KONISHI Ryusuke <[email protected]>
> Cc: [email protected]
>
> Note: If this gets pushed to Linus before the merge window opens, I'll
> drop the cc of [email protected], since the regression was
> introduced in 3.6-rc1.
Ah, good catch. Thanks for fixing this. I agree with the fix so you can
add:
Reviewed-by: Jan Kara <[email protected]>
Honza
--
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html