NetBSD-Bugs archive

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

Re: port-xen/53074: Daily 8.99.12 DOMU panic



coypu%sdf.org@localhost writes:

>  You can parse the backtrace like so (normally, it would report the
>  functions, but that is a bug).
>  
>  gdb /my-netbsd-kernel
>  info symbol 0xffffffff804f74b8
>  
>  and so on.

I have compiled a new kernel with debugging symbols which may prove more
helpful.  But in the meantime, using the original kernel I get the
following:

?() at ffffffff804f74b8
?() at ffffffff80600b95
?() at ffffffff802139eb
?() at ffffffff8022eb90
?() at ffffffff80212a48
?() at ffffffff80203119
?() at ffffffff804cd598
?() at ffffffff804b2ae6
?() at ffffffff8020f1a6

(gdb) info symbol 0xffffffff804f74b8
vpanic + 320 in section .text
(gdb) info symbol 0xffffffff80600b95
No symbol matches 0xffffffff80600b95.
(gdb) info symbol 0xffffffff802139eb
xengnt_free_entry + 155 in section .text
(gdb) info symbol 0xffffffff8022eb90
xbd_handler + 223 in section .text
(gdb) info symbol 0xffffffff80212a48
xen_intr_biglock_wrapper + 29 in section .text
(gdb) info symbol 0xffffffff80203119
Xresume_xenev6 + 73 in section .text
(gdb) info symbol 0xffffffff804cd598
softint_overlay + 1278 in section .text
(gdb) info symbol 0xffffffff804b2ae6
lwp_userret + 521 in section .text
(gdb) info symbol 0xffffffff8020f1a6
syscall + 406 in section .text


>  To check the value of entry, I suspect this will do:
>  
>  Index: xengnt.c
>  ===================================================================
>  RCS file: /cvsroot/src/sys/arch/xen/xen/xengnt.c,v
>  retrieving revision 1.25
>  diff -u -r1.25 xengnt.c
>  --- xengnt.c	24 Oct 2012 13:07:46 -0000	1.25
>  +++ xengnt.c	6 Mar 2018 01:47:55 -0000
>  @@ -261,7 +261,8 @@
>   xengnt_free_entry(grant_ref_t entry)
>   {
>   	mutex_enter(&grant_lock);
>  -	KASSERT(entry > NR_RESERVED_ENTRIES);
>  +	KASSERTMSG(entry > NR_RESERVED_ENTRIES,
>  +	    "entry > NR_RESERVED_ENTRIES and entry is %d", entry);
>   	KASSERT(gnt_entries[last_gnt_entry] == XENGNT_NO_ENTRY);
>   	KASSERT(last_gnt_entry >= 0);
>   	KASSERT(last_gnt_entry <= gnt_max_grant_frames * NR_GRANT_ENTRIES_PER_PAGE);
>  
>  
>  Write the above to a file, and use patch -p0 < /path/to/patch-file
>  and rebuild a new kernel:
>  cd src; ./build.sh -U -u -m amd64 -O ~/xen tools kernel=XEN3_DOMU
>  

I can apply a patch in a day or so and recompile.  If the panic happens
on schedule it should occur late afternoon tomorrow.





-- 
Brad Spencer - brad%anduin.eldar.org@localhost - KC8VKS
http://anduin.eldar.org  - & -  http://anduin.ipv6.eldar.org [IPv6 only]


Home | Main Index | Thread Index | Old Index