NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/55634: if_wg test failures with mbuf pool corruption
>Number: 55634
>Category: kern
>Synopsis: if_wg test failures with mbuf pool corruption
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Sep 01 14:00:00 +0000 2020
>Originator: Martin Husemann
>Release: NetBSD 9.99.72
>Organization:
The NetBSD Foundation, Inc.
>Environment:
System: NetBSD thirdstage.duskware.de 9.99.72 NetBSD 9.99.72 (MODULAR) #373: Tue Sep 1 09:54:58 CEST 2020 martin%thirdstage.duskware.de@localhost:/usr/src/sys/arch/sparc64/compile/MODULAR sparc64
Architecture: sparc64
Machine: sparc64
>Description:
Many of the net/if_wg tests fail with rump kernel crashes on sparc64.
Example from t_basic::wg_payload_sizes_ipv6_over_ipv4:
[ 1.3700050] shmif0: Ethernet address b2:a0:0e:c5:c7:78
[ 3.8300050] panic: pool_redzone_check: [mbpl] 0x00 != 0x33
Core was generated by `rump_server'.
Program terminated with signal SIGABRT, Aborted.
#0 abort () at /usr/src/lib/libc/stdlib/abort.c:80
80 (void)signal(SIGABRT, SIG_DFL);
[Current thread is 1 (process 17080)]
#0 abort () at /usr/src/lib/libc/stdlib/abort.c:80
#1 0x0000000040e0a47c in rumpuser_exit (rv=<optimized out>)
at /usr/src/lib/librumpuser/rumpuser.c:236
#2 0x00000000407ee22c in cpu_reboot (howto=<optimized out>, bootstr=0x0)
at /usr/src/lib/librump/../../sys/rump/librump/rumpkern/emul.c:429
#3 0x00000000407c23ec in kern_reboot (howto=<optimized out>, bootstr=0x0)
at /usr/src/lib/librump/../../sys/rump/../kern/kern_reboot.c:73
#4 0x00000000407979d4 in vpanic (fmt=0x407fcd08 "%s: [%s] 0x%02x != 0x%02x",
ap=0x474af0e8)
at /usr/src/lib/librump/../../sys/rump/../kern/subr_prf.c:290
#5 0x0000000040797aac in panic (fmt=0x407fcd08 "%s: [%s] 0x%02x != 0x%02x")
at /usr/src/lib/librump/../../sys/rump/../kern/subr_prf.c:209
#6 0x0000000040799808 in pool_redzone_check (pp=0x409d5800, p=0x40da2480)
at /usr/src/lib/librump/../../sys/rump/../kern/subr_pool.c:3141
#7 0x000000004079e550 in pool_redzone_check (p=0x40da2480, pp=0x409d5800)
at /usr/src/lib/librump/../../sys/rump/../kern/subr_pool.c:3166
#8 pool_cache_redzone_check (p=0x40da2480, pc=0x409d5800)
at /usr/src/lib/librump/../../sys/rump/../kern/subr_pool.c:3166
#9 pool_cache_put_paddr (pc=0x409d5800, object=0x40da2480,
pa=18446744073709551615)
at /usr/src/lib/librump/../../sys/rump/../kern/subr_pool.c:2765
#10 0x0000000041e1d9c8 in m_free (m=<optimized out>)
at /usr/src/lib/librumpnet/../../sys/rump/../kern/uipc_mbuf.c:1989
#11 m_free (m=<optimized out>)
at /usr/src/lib/librumpnet/../../sys/rump/../kern/uipc_mbuf.c:1969
#12 0x0000000041e1e9f4 in m_freem (m=<optimized out>)
at /usr/src/lib/librumpnet/../../sys/rump/../kern/uipc_mbuf.c:2001
#13 m_freem (m=0x40da2590)
at /usr/src/lib/librumpnet/../../sys/rump/../kern/uipc_mbuf.c:1996
#14 0x0000000042403be0 in shmif_snd (m0=<optimized out>, ifp=0x42320f40)
at /usr/src/sys/rump/net/lib/libshmif/if_shmem.c:632
#15 shmif_start (ifp=0x42320f40)
at /usr/src/sys/rump/net/lib/libshmif/if_shmem.c:570
#16 0x00000000420babbc in if_start_lock (ifp=0x42320f40)
at /usr/src/sys/rump/net/lib/libnet/../../../../net/if.h:511
#17 if_start_lock (ifp=0x42320f40)
at /usr/src/sys/rump/net/lib/libnet/../../../../net/if.h:504
#18 if_transmit (ifp=0x42320f40, m=0x40da2590)
at /usr/src/sys/rump/net/lib/libnet/../../../../net/if.c:3624
#19 0x00000000420c2374 in if_transmit_lock (ifp=0x42320f40, m=0x40da2590)
at /usr/src/sys/rump/net/lib/libnet/../../../../net/if.c:3649
#20 0x00000000420acbfc in ether_output (ifp0=0x42320f40, m0=<optimized out>,
dst=0x474af794, rt=<optimized out>)
at /usr/src/sys/rump/net/lib/libnet/../../../../net/if_ethersubr.c:456
#21 0x000000004203793c in if_output_lock (rt=<optimized out>,
dst=<optimized out>, m=<optimized out>, ifp=<optimized out>,
cifp=<optimized out>)
at /usr/src/sys/rump/net/lib/libnet/../../../../net/if.h:497
#22 if_output_lock (rt=<optimized out>, dst=<optimized out>,
m=<optimized out>, ifp=<optimized out>, cifp=<optimized out>)
at /usr/src/sys/rump/net/lib/libnet/../../../../net/if.h:487
#23 ip6_if_output (origifp=<optimized out>, rt=<optimized out>,
dst=<optimized out>, m=<optimized out>, ifp=<optimized out>)
at /usr/src/sys/rump/net/lib/libnet/../../../../netinet6/ip6_output.c:177
#24 ip6_if_output (ifp=0x42320f40, origifp=0x42320f40, m=0x40da2590,
dst=0x474af794, rt=0x0)
at /usr/src/sys/rump/net/lib/libnet/../../../../netinet6/ip6_output.c:159
#25 0x0000000042033d1c in nd6_llinfo_release_pkts (ln=0x4297e040,
ifp=0x42320f40)
at /usr/src/sys/rump/net/lib/libnet/../../../../netinet6/nd6.c:1432
#26 0x000000004202f604 in nd6_na_input (m=0x40da2370, off=<optimized out>,
icmp6len=<optimized out>)
at /usr/src/sys/rump/net/lib/libnet/../../../../netinet6/nd6_nbr.c:850
#27 0x0000000042051a68 in _icmp6_input (m=0x40da2040, off=<optimized out>,
proto=<optimized out>)
at /usr/src/sys/rump/net/lib/libnet/../../../../netinet6/icmp6.c:869
#28 0x0000000041e0b60c in wqinput_work (wk=0x40d87b20, arg=0x40b2d000)
at /usr/src/lib/librumpnet/../../sys/rump/../netinet/wqinput.c:244
#29 0x000000004078d9c4 in workqueue_runlist (wq=0x41164580, wq=0x41164580,
list=0x411645e8)
at /usr/src/lib/librump/../../sys/rump/../kern/subr_workqueue.c:106
#30 workqueue_worker (cookie=0x41164580)
at /usr/src/lib/librump/../../sys/rump/../kern/subr_workqueue.c:136
#31 0x00000000407e8e10 in threadbouncer (arg=0x40d87980)
at /usr/src/lib/librump/../../sys/rump/librump/rumpkern/threads.c:90
#32 0x000000004100f328 in pthread__create_tramp (cookie=0x41160800)
at /usr/src/lib/libpthread/pthread.c:560
>How-To-Repeat:
on a sparc64 machine: cd /usr/tests/net/if_wg && atf-run t_basic
>Fix:
n/a
Home |
Main Index |
Thread Index |
Old Index