aboutsummaryrefslogtreecommitdiffstats
path: root/mm/filemap.c
diff options
context:
space:
mode:
Diffstat (limited to 'mm/filemap.c')
-rw-r--r--mm/filemap.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/mm/filemap.c b/mm/filemap.c
index 07e9d9258b48..239d36163bbe 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -576,10 +576,12 @@ EXPORT_SYMBOL(unlock_page);
576 */ 576 */
577void end_page_writeback(struct page *page) 577void end_page_writeback(struct page *page)
578{ 578{
579 if (!TestClearPageReclaim(page) || rotate_reclaimable_page(page)) { 579 if (TestClearPageReclaim(page))
580 if (!test_clear_page_writeback(page)) 580 rotate_reclaimable_page(page);
581 BUG(); 581
582 } 582 if (!test_clear_page_writeback(page))
583 BUG();
584
583 smp_mb__after_clear_bit(); 585 smp_mb__after_clear_bit();
584 wake_up_page(page, PG_writeback); 586 wake_up_page(page, PG_writeback);
585} 587}