Re: Panic: witness_warn (r191682; shared rw udpinp (udpinp)...netinet6/udp6_usrreq.c:360)

From: Chagin Dmitry <dchagin_at_freebsd.org>
Date: Fri, 1 May 2009 00:48:28 +0400
On Thu, Apr 30, 2009 at 08:27:48PM +0100, Robert Watson wrote:
> 
> On Thu, 30 Apr 2009, David Wolfskill wrote:
> 
> > Build machine crashed on boot of r191682:
> >
> > ...
> > GEOM_LABEL: Label ufsid/48fa940b4445475f removed.
> > fxp0: link state changed to UP
> > suspending ithread with the following locks held:
> > shared rw udpinp (udpinp) r = 0 (0xc5ac4f3c) locked _at_ /usr/src/sys/netinet6/udp6_usrreq.c:360
> > panic: witness_warn
> > cpuid = 1
> > KDB: enter: panic
> > [thread pid 12 tid 100008 ]
> > Stopped at      kdb_enter+0x3a: movl    $0,kdb_why
> > db>
> >
> > I started to paste the output of "show witness" in here, but it got to be 
> > sufficiently lengthy that I thought it better to save it for private mail or 
> > a follow-up if it's really wanted.
> 
> This falls into the category of "unlikely software bugs" -- is there any 
> chance this machine is overheating or has memory problems?  "show alllocks" 
> would be helpful on general principle, though.
> 

hi Robert,
look at patch bellow (even not tested, only to show a problem):

diff --git a/sys/netinet6/udp6_usrreq.c b/sys/netinet6/udp6_usrreq.c
index 5393740..f8ac3f2 100644
--- a/sys/netinet6/udp6_usrreq.c
+++ b/sys/netinet6/udp6_usrreq.c
_at__at_ -357,7 +357,6 _at__at_ udp6_input(struct mbuf **mp, int *offp, int proto)
 			UDPSTAT_INC(udps_noportmcast);
 			goto badheadlocked;
 		}
-		INP_RLOCK(last);
 		INP_INFO_RUNLOCK(&V_udbinfo);
 		if (last->inp_ppcb != NULL) {
 			/*


David, can you test this patch?
thnx!
-- 
Have fun!
chd

Received on Thu Apr 30 2009 - 18:48:33 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:46 UTC