ext4: clear buffer_uninit flag when submitting IO
Currently noone cleared buffer_uninit flag. This results in writeback needlessly marking io_end as needing extent conversion scanning extent tree for extents to convert. So clear the buffer_uninit flag once the buffer is submitted for IO and the flag is transformed into EXT4_IO_END_UNWRITTEN flag. Signed-off-by: Jan Kara <jack@suse.cz> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> Reviewed-by: Zheng Liu <wenqing.lz@taobao.com>
This commit is contained in:
Родитель
4eec708d26
Коммит
7b001d6a0c
|
@ -387,7 +387,7 @@ submit_and_retry:
|
|||
if (ret != bh->b_size)
|
||||
goto submit_and_retry;
|
||||
io_end = io->io_end;
|
||||
if (buffer_uninit(bh))
|
||||
if (test_clear_buffer_uninit(bh))
|
||||
ext4_set_io_unwritten_flag(inode, io_end);
|
||||
io_end->size += bh->b_size;
|
||||
io->io_next_block++;
|
||||
|
|
Загрузка…
Ссылка в новой задаче