From: Nick Piggin Signed-off-by: Andrew Morton --- mm/page-writeback.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -puN mm/page-writeback.c~nfs-invariant-fix mm/page-writeback.c --- a/mm/page-writeback.c~nfs-invariant-fix +++ a/mm/page-writeback.c @@ -826,7 +826,7 @@ int __set_page_dirty_nobuffers(struct pa mapping2 = page_mapping(page); if (mapping2) { /* Race with truncate? */ BUG_ON(mapping2 != mapping); - WARN_ON(!PageUptodate(page)); + WARN_ON(!PagePrivate(page) && !PageUptodate(page)); if (mapping_cap_account_dirty(mapping)) { __inc_zone_page_state(page, NR_FILE_DIRTY); task_io_account_write(PAGE_CACHE_SIZE); _