Date: Fri, 11 Jun 2010 19:44:04 +0000 (UTC) From: "Bjoern A. Zeeb" <bz@FreeBSD.org> To: Jack F Vogel <jfv@FreeBSD.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r209060 - head/sys/dev/ixgbe Message-ID: <20100611193903.W26508@maildrop.int.zabbadoz.net> In-Reply-To: <201006111903.o5BJ3xp1062600@svn.freebsd.org> References: <201006111903.o5BJ3xp1062600@svn.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 11 Jun 2010, Jack F Vogel wrote: > Author: jfv > Date: Fri Jun 11 19:03:59 2010 > New Revision: 209060 > URL: http://svn.freebsd.org/changeset/base/209060 > > Log: > Remove a disable_queue from the beginning of the > interrupt handler, automask handles it. > Also, add in msix vector descriptions. > > MFC for 8.1 asap Hi Jack, I just tried a couple of days old HEAD before going to update to this one and found hundreds of the follwoing "hanging" the machine as the console stays busy for .. well don't know yet... load: 1.84 cmd: ifconfig 1386 [*ix0] 399.98r 0.00u 0.07s 0% 1364k ... uma_zalloc_arg: zone "mbuf_packet" with the following non-sleepable locks held: exclusive sleep mutex ix0:rx(0) (ix0:rx(0)) r = 0 (0xffffff0001c25808) locked @ sys/modules/ixgbe/../../dev/ixgbe/ixgbe.c:3615 exclusive sleep mutex ix0 (IXGBE Core Lock) r = 0 (0xffffff80110a73b8) locked @ sys/modules/ixgbe/../../dev/ixgbe/ixgbe.c:1197 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wt_delta 15.e4dd9523a934dd00 too short rapper+0x2a kdb_backtrace() at kdb_backtrace+0x32 _witness_debugger() at _witness_debugger+0x2b witness_warn() at witness_warn+0x314 uma_zalloc_arg() at uma_zalloc_arg+0x3e ixgbe_init_locked() at ixgbe_init_locked+0x6cd ixgbe_init() at ixgbe_init+0x39 ether_ioctl() at ether_ioctl+0x71 ... This happened on: foo.example.net# ifconfig ix0 up after kldload ixgbe. /bz > Modified: > head/sys/dev/ixgbe/ixgbe.c > > Modified: head/sys/dev/ixgbe/ixgbe.c > ============================================================================== > --- head/sys/dev/ixgbe/ixgbe.c Fri Jun 11 18:46:34 2010 (r209059) > +++ head/sys/dev/ixgbe/ixgbe.c Fri Jun 11 19:03:59 2010 (r209060) > @@ -1365,7 +1365,6 @@ ixgbe_msix_que(void *arg) > bool more_tx, more_rx; > u32 newitr = 0; > > - ixgbe_disable_queue(adapter, que->msix); > ++que->irqs; > > more_rx = ixgbe_rxeof(que, adapter->rx_process_limit); > @@ -2121,6 +2120,9 @@ ixgbe_allocate_msix(struct adapter *adap > device_printf(dev, "Failed to register QUE handler"); > return (error); > } > +#if __FreeBSD_version >= 800504 > + bus_describe_intr(dev, que->res, que->tag, "que %d", i); > +#endif > que->msix = vector; > adapter->que_mask |= (u64)(1 << que->msix); > /* > @@ -2155,6 +2157,9 @@ ixgbe_allocate_msix(struct adapter *adap > device_printf(dev, "Failed to register LINK handler"); > return (error); > } > +#if __FreeBSD_version >= 800504 > + bus_describe_intr(dev, adapter->res, adapter->tag, "link"); > +#endif > adapter->linkvec = vector; > /* Tasklets for Link, SFP and Multispeed Fiber */ > TASK_INIT(&adapter->link_task, 0, ixgbe_handle_link, adapter); >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20100611193903.W26508>