Re: Kernel crashes after sleep: how to debug?

2013-07-18 Thread Yuri

On 07/16/2013 08:07, John Baldwin wrote:

Can you go to frame 8 and do 'l' in kgdb?


(kgdb) up 8
#8  0x80baea78 in vm_pageout () at /usr/src/sys/vm/vm_pageout.c:829
829 if (!VM_OBJECT_TRYLOCK(object) &&
(kgdb) l
824 if (!vm_pageout_page_lock(m, &next)) {
825 vm_page_unlock(m);
826 continue;
827 }
828 object = m->object;
829 if (!VM_OBJECT_TRYLOCK(object) &&
830 !vm_pageout_fallback_object_lock(m, &next)) {
831 vm_page_unlock(m);
832 VM_OBJECT_UNLOCK(object);
833 continue;

___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: Kernel crashes after sleep: how to debug?

2013-07-18 Thread John Baldwin
On Thursday, July 18, 2013 2:15:48 pm Yuri wrote:
> On 07/16/2013 08:07, John Baldwin wrote:
> > Can you go to frame 8 and do 'l' in kgdb?
> 
> (kgdb) up 8
> #8  0x80baea78 in vm_pageout () at /usr/src/sys/vm/vm_pageout.c:829
> 829 if (!VM_OBJECT_TRYLOCK(object) &&
> (kgdb) l
> 824 if (!vm_pageout_page_lock(m, &next)) {
> 825 vm_page_unlock(m);
> 826 continue;
> 827 }
> 828 object = m->object;
> 829 if (!VM_OBJECT_TRYLOCK(object) &&
> 830 !vm_pageout_fallback_object_lock(m, &next)) {
> 831 vm_page_unlock(m);
> 832 VM_OBJECT_UNLOCK(object);
> 833 continue;

Hmm, so this seems to indicate you have a page on the active queue that 
doesn't have an associated VM object.  Can you maybe 'p *m'?  Maybe some
temporary page is allocated during suspend but isn't freed appropriately?

-- 
John Baldwin
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: Kernel crashes after sleep: how to debug?

2013-07-18 Thread Yuri

On 07/18/2013 11:42, John Baldwin wrote:

Hmm, so this seems to indicate you have a page on the active queue that
doesn't have an associated VM object.  Can you maybe 'p *m'?  Maybe some
temporary page is allocated during suspend but isn't freed appropriately?


Unfortunately, I get this:
(kgdb) p *m
No symbol "m" in current context.

even though kernel was built with "makeoptions DEBUG=-g", same for 
other symbols there.


Is there a way to identify when and by whom the page has been allocated?

Yuri
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: Kernel crashes after sleep: how to debug?

2013-07-18 Thread John Baldwin
On Thursday, July 18, 2013 3:56:46 pm Yuri wrote:
> On 07/18/2013 11:42, John Baldwin wrote:
> > Hmm, so this seems to indicate you have a page on the active queue that
> > doesn't have an associated VM object.  Can you maybe 'p *m'?  Maybe some
> > temporary page is allocated during suspend but isn't freed appropriately?
> 
> Unfortunately, I get this:
> (kgdb) p *m
> No symbol "m" in current context.
> 
> even though kernel was built with "makeoptions DEBUG=-g", same for 
> other symbols there.
> 
> Is there a way to identify when and by whom the page has been allocated?

Are you in frame 8?

-- 
John Baldwin
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: Kernel crashes after sleep: how to debug?

2013-07-18 Thread Yuri

On 07/18/2013 13:52, John Baldwin wrote:

Are you in frame 8?


Yes.

Yuri
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"


Re: Kernel crashes after sleep: how to debug?

2013-07-18 Thread Yuri

On 07/18/2013 13:52, John Baldwin wrote:

Are you in frame 8?


For some reason the debug info is missing in frame 8, but is present in 
surrounding frames 7 and 9.
The might be a bug in makefiles that debug flag isn't passed into 
sys/vm/ directory.


Yuri
___
freebsd-hackers@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"