Commit b60ee714 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] PG_writeback: fix waitqueue_active memory barrier

The spin_unlock() in rotate_reclaimable_page() is not a sufficient memory
barrier.
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 59847ec6
...@@ -420,8 +420,8 @@ void end_page_writeback(struct page *page) ...@@ -420,8 +420,8 @@ void end_page_writeback(struct page *page)
if (!TestClearPageReclaim(page) || rotate_reclaimable_page(page)) { if (!TestClearPageReclaim(page) || rotate_reclaimable_page(page)) {
if (!test_clear_page_writeback(page)) if (!test_clear_page_writeback(page))
BUG(); BUG();
smp_mb__after_clear_bit();
} }
smp_mb__after_clear_bit();
wake_up_page(page, PG_writeback); wake_up_page(page, PG_writeback);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment