mirror of https://gitee.com/openkylin/linux.git
[PATCH] Fix XFS after clear_page_dirty() removal
XFS appears to call clear_page_dirty to get the mapping tree dirty tag set correctly at the same time the page dirty flag is cleared. I note that this can be done by set_page_writeback() if we clear the dirty flag on the page first when we are writing back the entire page. Hence it seems to me that the XFS call to clear_page_dirty() could easily be substituted by clear_page_dirty_for_io() followed by a call to set_page_writeback() to get the mapping tree tags set correctly after the page has been marked clean. Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
9280f6822c
commit
921320210b
|
@ -341,9 +341,9 @@ xfs_start_page_writeback(
|
|||
{
|
||||
ASSERT(PageLocked(page));
|
||||
ASSERT(!PageWriteback(page));
|
||||
set_page_writeback(page);
|
||||
if (clear_dirty)
|
||||
clear_page_dirty(page);
|
||||
clear_page_dirty_for_io(page);
|
||||
set_page_writeback(page);
|
||||
unlock_page(page);
|
||||
if (!buffers) {
|
||||
end_page_writeback(page);
|
||||
|
|
Loading…
Reference in New Issue