Date: Thu, 29 Jul 2004 12:40:46 -0400 (EDT) From: Robert Watson <rwatson@FreeBSD.org> To: Norikatsu Shigemura <nork@FreeBSD.org> Cc: freebsd-current@FreeBSD.org Subject: Re: rip6_output WITNESS warning Message-ID: <Pine.NEB.3.96L.1040729123927.46374E-100000@fledge.watson.org> In-Reply-To: <200407291639.i6TGdIP5037477@sakura.ninth-nine.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 30 Jul 2004, Norikatsu Shigemura wrote: > Hi rwatson. > > I contacted WITNESS warning on boot(newest current) in my > SMP machine(PentiumIII x2). Similar to a problem we saw on IPv4. Could you try the following: - At or about line 379 of raw_ip6.c (raw6_output()), there's a call to M_PREPEND with the argumetn M_TRYWAIT. Could you make this M_DONTWAIT? - This code fails to properly check the return value. After the M_PREPEND() call, we should check if m is NULL, and if so, goto bad. Thanks! Robert N M Watson FreeBSD Core Team, TrustedBSD Projects robert@fledge.watson.org Principal Research Scientist, McAfee Research > > Mounting root from ufs:/dev/ad0s1a > Sleeping in "rip6_output" with the following non-sleepable locks held: > exclusive sleep mutex inp (raw6inp) r = 0 (0xc3181090) locked @ /devel/src/sys/netinet6/raw_ip6.c:346 > exclusive sleep mutex rip r = 0 (0xc08183cc) locked @ /devel/src/sys/netinet6/raw_ip6.c:744 > KDB: stack backtrace: > kdb_backtrace(c0814d74,e3d42aa8,1,1,2) at kdb_backtrace+0x2e > witness_warn(5,0,c0743b3f,c071c348,0) at witness_warn+0x1d3 > rip6_output(c312d800,c307e8a4,e3d42b84,c312d900,1c1c) at rip6_output+0x19b > rip6_send(c307e8a4,0,c312d800,c317fc00,c312d900) at rip6_send+0x146 > sosend(c307e8a4,c317fc00,e3d42c44,c312d800,c312d900) at sosend+0x87d > kern_sendit(c30159a0,3,e3d42cbc,0,c312d900) at kern_sendit+0x13c > sendit(c30159a0,3,e3d42cbc,0,c2e00d40) at sendit+0x19b > sendmsg(c30159a0,e3d42d14,c,431,3) at sendmsg+0x82 > syscall(2f,2f,2f,4,1) at syscall+0x2a0 > Xint0x80_syscall() at Xint0x80_syscall+0x1f > --- syscall (28, FreeBSD ELF32, sendmsg), eip = 0x680d63ef, esp = 0xbfbfed9c, ebp = 0xbfbfede8 --- > sym0:0:control msgout: 80 20 17 d. > > FreeBSD/i386 (nadesico.ninth-nine.com) (dcons) >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.NEB.3.96L.1040729123927.46374E-100000>