From owner-freebsd-current@FreeBSD.ORG Mon Jan 17 21:03:34 2011 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 28080106564A for ; Mon, 17 Jan 2011 21:03:34 +0000 (UTC) (envelope-from yanegomi@gmail.com) Received: from mail-ww0-f50.google.com (mail-ww0-f50.google.com [74.125.82.50]) by mx1.freebsd.org (Postfix) with ESMTP id AC1888FC15 for ; Mon, 17 Jan 2011 21:03:33 +0000 (UTC) Received: by wwf26 with SMTP id 26so5617959wwf.31 for ; Mon, 17 Jan 2011 13:03:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=DuNRPIruCXpeHZ4L+fef9D+axKiDErmS4BNi8mCjQaI=; b=QF2fFDPhzC9YohEYU3OZsFcKDd4ij3URPKY8uZu35BNy8FafWMLH17onHo4SMvLmZ/ 2Ruz1nhjsh3sUXz6O/SetYSQ42sfXY2tHAQtHYY5YyJMRGlU6CVAFQ5N8C5jD9fF7m3t z5qU4OCQmyOTvQiETB+U6hgTXnjDj7MhImA3Y= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=jmXwtfJcc8oyHfUO9pAQfFDXNifOsyPtt7LrCjb3D6qvGyZ72rBiPAXsMtLZAp1VlN vHBaYsPfMFn4WrgA3UiVrn5GDVx3gA4/nv6lX+20S+YPe/2vHCKpvwn6k7wt+N8cf0A3 WlVhuErO/W/gLO3mKrTXHrtSmNs1/tQtosje4= MIME-Version: 1.0 Received: by 10.216.78.146 with SMTP id g18mr3918350wee.1.1295298163977; Mon, 17 Jan 2011 13:02:43 -0800 (PST) Sender: yanegomi@gmail.com Received: by 10.216.254.226 with HTTP; Mon, 17 Jan 2011 13:02:43 -0800 (PST) In-Reply-To: References: <7d6fde3d1002191625m4d0d160dq2dc24f124aa38d0e@mail.gmail.com> Date: Mon, 17 Jan 2011 13:02:43 -0800 X-Google-Sender-Auth: 4ntHsbxHbyUX9ESsoPvNiaFpFK0 Message-ID: From: Garrett Cooper To: Sergey Kandaurov Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: FreeBSD Current Subject: Re: Known LoR when taking bringing up bge(4) after system in multiuser? X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jan 2011 21:03:34 -0000 On Mon, Jan 17, 2011 at 7:44 AM, Sergey Kandaurov wrote= : > On 20 February 2010 03:25, Garrett Cooper wrote: >> Hi, >> =A0 =A0I came across the following LoR: >> >> lock order reversal: >> =A01st 0xc56aae04 if_afdata (if_afdata) @ >> /usr/home/garrcoop/ipcvs/freebsd/src/sys/net/if_llatbl.c:130 >> =A02nd 0xc58a1d80 radix node head (radix node head) @ >> /usr/home/garrcoop/ipcvs/freebsd/src/sys/net/route.c:360 >> KDB: stack backtrace: >> db_trace_self_wrapper(c0c6993e,c5264828,c08b173f,c08a2f35,c0c6c9d1,...) >> at db_trace_self_wrapper+0x26 >> kdb_backtrace(c08a2f35,c0c6c9d1,c5530758,c552b680,c5264884,...) at >> kdb_backtrace+0x29 >> _witness_debugger(c0c6c9d1,c58a1d80,c0c6cacb,c552b680,c0c77940,...) at >> _witness_debugger+0x1e >> witness_checkorder(c58a1d80,1,c0c77940,168,0,...) at witness_checkorder+= 0x818 >> _rw_rlock(c58a1d80,c0c77940,168,c568d2e4,1,...) at _rw_rlock+0x9c >> rtalloc1_fib(c5264a60,0,0,0,c526493c,...) at rtalloc1_fib+0x82 >> rtalloc1(c5264a60,0,0,1,0,...) at rtalloc1+0x27 >> in_lltable_rtcheck(c56aac00,a000,c5264a60,576,c0c7691c,...) at >> in_lltable_rtcheck+0x3e >> in_lltable_lookup(c58a1b00,a000,c5264a60,c0913e33,52098000,...) at >> in_lltable_lookup+0xc3 >> llentry_update(c52649f0,c58a1b00,c5264a60,c56aac00,c552c4b8,...) at >> llentry_update+0xa3 >> flowtable_lookup(c5739400,c5b27700,c5264a58,0,3,...) at flowtable_lookup= +0x437 >> ip_output(c5b27700,0,0,0,0,...) at ip_output+0xf8 >> icmp_reflect(1,10,0,c552c6c0,c552bf70,...) at icmp_reflect+0x5cc >> icmp_input(c5b27700,14,c568d240,c0dafc80,c568d240,...) at icmp_input+0x3= f0 >> ip_input(c5b27700,c5264bcc,c07235f4,c0dafc80,0,...) at ip_input+0x619 >> netisr_dispatch_src(1,0,c5b27700,c5264c04,c091c349,...) at >> netisr_dispatch_src+0xcb >> netisr_dispatch(1,c5b27700,c56aac00,c56aac00,c5b74002,...) at >> netisr_dispatch+0x20 >> ether_demux(c56aac00,c5b27700,3,0,3) at ether_demux+0x193 >> ether_input(c56aac00,c5b27700,c0c250e6,d41,c56b7008,...) at ether_input+= 0x355 >> bge_rxeof(c56b7008,0,c0c250e6,e13,c56b7008,...) at bge_rxeof+0x2b9 >> bge_intr(c56b7000,c5264cc8,c085f65d,c0dc8880,c5576a38,...) at bge_intr+0= x107 >> intr_event_execute_handlers(c55717f8,c5576a00,c0c61560,533,c5576a70,...) >> at intr_event_execute_handlers+0x10f >> ithread_loop(c56b26c0,c5264d38,c0c612a1,343,c55717f8,...) at ithread_loo= p+0x98 >> fork_exit(c084923c,c56b26c0,c5264d38) at fork_exit+0xb8 >> fork_trampoline() at fork_trampoline+0x8 >> --- trap 0, eip =3D 0, esp =3D 0xc5264d70, ebp =3D 0 --- >> >> =A0 =A0when I did the following steps [once]: >> >> echo "ifconfig_bge0=3D\"DHCP\"" >> /etc/rc.conf >> /etc/rc.d/netif start >> >> =A0 =A0using srcs from cvs pulled in the last 2 days or so... >> =A0 =A0I'll gladly provide more details when requested. > > I faced a similar LOR when running ping. > Looks like it's not bge related, but comes from arpv2 and/or flowtable. > > # ping 8.8.8.8 > loPING 8.8.8.8 (8.ck8.8.8): 56 data =A0obytes > rder reversal: > =A01st 0xfffffe00184413c0 if_afdata (if_afdata) @ /usr/src/sys/net/if_lla= tbl.c:151 > =A02nd 0xfffffe0018ee32f8 radix node head (radix node head) @ > /usr/src/sys/net/route.c:362 > KDB: stack backtrace: > db_trace_self_wrapper() at db_trace_self_wrapper+0x2a > kdb_backtrace() at kdb_backtrace+0x37 > _witness_debugger() at _witness_debugger+0x2e > witness_checkorder() at witness_checkorder+0x807 > _rw_rlock() at _rw_rlock+0x6d > rtalloc1_fib() at rtalloc1_fib+0x10b > in_lltable_rtcheck() at in_lltable_rtcheck+0x35 > in_lltable_lookup() at in_lltable_lookup+0xbb > llentry_update() at llentry_update+0x19e > flowtable_lookup() at flowtable_lookup+0x6f6 > flowtable_lookup_mbuf() at flowtable_lookup_mbuf+0x3c6 > ip_output() at ip_output+0xa9c > rip_output() at rip_output+0x246 > sosend_generic() at sosend_generic+0x347 > kern_sendit() at kern_sendit+0x1b5 > sendit() at sendit+0xdc > sendto() at sendto+0x4d > syscallenter() at syscallenter+0x1aa > syscall() at syscall+0x4c > Xfast_syscall() at Xfast_syscall+0xe2 > --- syscall (133, FreeBSD ELF64, sendto), rip =3D 0x80095334c, rsp =3D > 0x7ffffffed608, rbp =3D 0x40 --- > 64 bytes from 8.8.8.8: icmp_seq=3D0 ttl=3D56 time=3D1332.205 ms > 64 bytes from 8.8.8.8: icmp_seq=3D0 ttl=3D56 time=3D1332.274 ms (DUP!) I'll see if I can quickly reproduce that in-house with our bge-enabled machines on Tuesday with a bleeding edge CURRENT image if I have the time. Thanks, -Garrett