Re: panic: wrong page state m 0xe00000027a9adb40 + savecore deadlock

From: Konstantin Belousov <kostikbel_at_gmail.com>
Date: Wed, 16 Oct 2013 15:01:42 +0300
On Wed, Oct 16, 2013 at 02:55:26PM +0300, Konstantin Belousov wrote:
> On Wed, Oct 16, 2013 at 09:02:19AM +0100, Anton Shterenlikht wrote:
> > panic:
> >  http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/182999
> 
> db> show pginfo 0xe00000027d352600
> page 0xe00000027d352600 obj 0xe0000000128fda00 pidx 0x0 phys 0x275dc6000 q 255 hold 0 wire 1
> af 0x0 of 0x0 f 0x0 act 0 busy 1 valid 0xff dirty 0x0
> 
> AFAIR ia64 uses 8K pages.
> 
> Please do the following:
> 1. apply the patch at the end of this message, reproduce the problem
> and show me both exact panic message from the patched kernel and 'show
> pginfo addr' again.
> 2. show me the ls -la <file> output for the file which was accessed
> through nginx, also what is the filesystem where the file resides on ?
Sure, I forgot the patch.

diff --git a/sys/kern/uipc_syscalls.c b/sys/kern/uipc_syscalls.c
index 322550b..9d46dc7 100644
--- a/sys/kern/uipc_syscalls.c
+++ b/sys/kern/uipc_syscalls.c
_at__at_ -2070,7 +2070,7 _at__at_ free_page:
 	}
 	KASSERT(error != 0 || (m->wire_count > 0 &&
 	    vm_page_is_valid(m, off & PAGE_MASK, xfsize)),
-	    ("wrong page state m %p", m));
+	    ("wrong page state m %p off %#jx xfsize %d", m, off, xfsize));
 	VM_OBJECT_WUNLOCK(obj);
 	return (error);
 }

Received on Wed Oct 16 2013 - 10:01:49 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:43 UTC