From owner-freebsd-net@freebsd.org Thu May 25 14:47:55 2017 Return-Path: Delivered-To: freebsd-net@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68C33D8166C for ; Thu, 25 May 2017 14:47:55 +0000 (UTC) (envelope-from freebsd@omnilan.de) Received: from mx0.gentlemail.de (mx0.gentlemail.de [IPv6:2a00:e10:2800::a130]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 076251686 for ; Thu, 25 May 2017 14:47:54 +0000 (UTC) (envelope-from freebsd@omnilan.de) Received: from mh0.gentlemail.de (mh0.gentlemail.de [78.138.80.135]) by mx0.gentlemail.de (8.14.5/8.14.5) with ESMTP id v4PElp7C051668; Thu, 25 May 2017 16:47:51 +0200 (CEST) (envelope-from freebsd@omnilan.de) Received: from titan.inop.mo1.omnilan.net (titan.inop.mo1.omnilan.net [IPv6:2001:a60:f0bb:1::3:1]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mh0.gentlemail.de (Postfix) with ESMTPSA id 5D30C11E; Thu, 25 May 2017 16:47:51 +0200 (CEST) Message-ID: <5926EE96.1010000@omnilan.de> Date: Thu, 25 May 2017 16:47:50 +0200 From: Harry Schmalzbauer Organization: OmniLAN User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; de-DE; rv:1.9.2.8) Gecko/20100906 Lightning/1.0b2 Thunderbird/3.1.2 MIME-Version: 1.0 To: Vincenzo Maffione CC: freebsd-net Subject: Re: [panic] netmap(4) and if_lagg(4) References: <58CBCD7A.8060301@omnilan.de> <58CC23F5.7060507@omnilan.de> <58CFA394.8070901@omnilan.de> In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Greylist: ACL 129 matched, not delayed by milter-greylist-4.2.7 (mx0.gentlemail.de [78.138.80.130]); Thu, 25 May 2017 16:47:51 +0200 (CEST) X-Milter: Spamilter (Reciever: mx0.gentlemail.de; Sender-ip: 78.138.80.135; Sender-helo: mh0.gentlemail.de; ) X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 25 May 2017 14:47:55 -0000 Bezüglich Vincenzo Maffione's Nachricht vom 20.03.2017 15:01 (localtime): > 2017-03-20 10:40 GMT+01:00 Harry Schmalzbauer : > >> Bezüglich Vincenzo Maffione's Nachricht vom 17.03.2017 22:28 (localtime): … >> I'll try to provide more info about the panic this week. Like discussed >> offlist, the panic happend on a machine with the mentioned fix (latest >> stable). >> Perhaps this panic can be fixed, especialy for the vlan children. >> > > Ok, so if you create a vlan on an interface, and use netmap over the vlan, > you get a deterministic crash? Does the crash happen when you start > transmitting, receiving or both? > Sorry for the long delay. I now have a crash dump and could provide more info if someone can afford having a look at the lagg panic. The panic with em0.vlan vanisehd with latest -stable (11.1-prerelease), but using lagg reproducably panics. Unread portion of the kernel message buffer: 066.051358 [ 254] generic_find_num_desc called, in tx 1024 rx 1024 066.058166 [ 262] generic_find_num_queues called, in txq 0 rxq 0 066.064756 [1673] netmap_interp_ringid deprecated API, old ringid 0x0 -> ringid 0 reg 1 Fatal trap 12: page fault while in kernel mode cpuid = 1; apic id = 01 fault virtual address = 0xc fault code = supervisor read data, page not present instruction pointer = 0x20:0xffffffff80426894 stack pointer = 0x28:0xfffffe03afccb750 frame pointer = 0x28:0xfffffe03afccb770 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 12 (irq269: igb0:que 1) trap number = 12 panic: page fault cpuid = 1 KDB: stack backtrace: #0 0xffffffff805d8277 at kdb_backtrace+0x67 #1 0xffffffff80596d06 at vpanic+0x186 #2 0xffffffff80596b73 at panic+0x43 #3 0xffffffff80898472 at trap_fatal+0x322 #4 0xffffffff808984c9 at trap_pfault+0x49 #5 0xffffffff80897d06 at trap+0x286 #6 0xffffffff8087dfa1 at calltrap+0x8 #7 0xffffffff8069dc50 at vlan_input+0x1f0 #8 0xffffffff8068eb08 at ether_demux+0x128 #9 0xffffffff8068f7ab at ether_nh_input+0x31b #10 0xffffffff806ab3f0 at netisr_dispatch_src+0xa0 #11 0xffffffff8068edb6 at ether_input+0x26 #12 0xffffffff8039f808 at igb_rxeof+0x738 #13 0xffffffff8039ebcf at igb_msix_que+0x10f #14 0xffffffff8055e66c at intr_event_execute_handlers+0xec #15 0xffffffff8055e956 at ithread_loop+0xd6 #16 0xffffffff8055bcc5 at fork_exit+0x85 #17 0xffffffff8087e4de at fork_trampoline+0xe Uptime: 1m37s Dumping 1535 out of 15529 MB:..2%..11%..21%..31%..41%..51%..61%..71%..81%..91% … Reading symbols from /usr/lib/debug/boot/kernel/uhid.ko.debug...done. Loaded symbols for /usr/lib/debug/boot/kernel/uhid.ko.debug #0 doadump (textdump=) at pcpu.h:222 222 pcpu.h: No such file or directory. in pcpu.h (kgdb) list *0xffffffff80426894 0xffffffff80426894 is in generic_rx_handler (/usr/local/share/deploy-tools/RELENG_11/src/sys/dev/netmap/netmap_generic.c:628). 623 struct netmap_adapter *na = NA(ifp); 624 struct netmap_generic_adapter *gna = (struct netmap_generic_adapter *)na; 625 u_int work_done; 626 u_int rr = MBUF_RXQ(m); // receive ring number 627 628 if (rr >= na->num_rx_rings) { 629 rr = rr % na->num_rx_rings; // XXX expensive... 630 } 631 632 /* limit the size of the queue */ Thanks, -harry