Re: (NFS) BUG: at page-writeback.c:829 [Was: 2.6.22-rc1-mm1]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jiri Slaby wrote:
Nick Piggin napsal(a):

Jiri Slaby wrote:

Andrew Morton napsal(a):


ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.22-rc1/2.6.22-rc1-mm1/



I've got this in dmesg:

BUG: at /local/xslaby/xxx/mm/page-writeback.c:829
__set_page_dirty_nobuffers()
[<c010531e>] dump_trace+0x1ce/0x200
[<c010536a>] show_trace_log_lvl+0x1a/0x30
[<c0106012>] show_trace+0x12/0x20
[<c0106086>] dump_stack+0x16/0x20
[<c015566d>] __set_page_dirty_nobuffers+0x11d/0x130
[<c0155690>] redirty_page_for_writepage+0x10/0x20
[<c01938fc>] __block_write_full_page+0x20c/0x330
[<c0193b0a>] block_write_full_page+0xea/0x100
[<c0196c82>] blkdev_writepage+0x12/0x20
[<c015539e>] __writepage+0xe/0x30
[<c01558c2>] write_cache_pages+0x222/0x340
[<c0155a03>] generic_writepages+0x23/0x30
[<c0155a3e>] do_writepages+0x2e/0x50
[<c018decb>] __writeback_single_inode+0x8b/0x470
[<c018e75b>] generic_sync_sb_inodes+0x24b/0x470
[<c018e9a7>] sync_sb_inodes+0x27/0x30
[<c018ec33>] writeback_inodes+0xb3/0xe0
[<c01560f2>] wb_kupdate+0x82/0xf0
[<c015660b>] pdflush+0xeb/0x1b0
[<c0132e72>] kthread+0x42/0x70
[<c0104d4b>] kernel_thread_helper+0x7/0x1c

Do you have any messages before this one? Seems like it is probably
metadata,
but we've only caught it at the last minute...


No other messages before that. Bazillion through-nfs stacks after this...

Does this patch fix NFS?

--
SUSE Labs, Novell Inc.
Index: linux-2.6/mm/page-writeback.c
===================================================================
--- linux-2.6.orig/mm/page-writeback.c
+++ linux-2.6/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);

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux