On Wed, Jun 17, 2015 at 7:00 AM, Lakshmi Narasimhan Sundararajan < lakshm...@msystechnologies.com> wrote:
> [lakshmis@mau-bsd-10a ~/fortville/hol/sys/dev/ixl]$ diff -c5pt ixl_txrx.c > ixl_txrx.c.mod > *** ixl_txrx.c Fri Jun 12 06:56:51 2015 > --- ixl_txrx.c.mod Fri Jun 12 06:56:33 2015 > *************** ixl_mq_start(struct ifnet *ifp, struct m > *** 96,112 **** > --- 96,115 ---- > } else > #endif > i = m->m_pkthdr.flowid % vsi->num_queues; > } else > i = curcpu % vsi->num_queues; > + > + #if 0 > /* > ** This may not be perfect, but until something > ** better comes along it will keep from scheduling > ** on stalled queues. > */ > if (((1 << i) & vsi->active_queues) == 0) > i = ffsl(vsi->active_queues); > + #endif > > que = &vsi->queues[i]; > txr = &que->txr; > > err = drbr_enqueue(ifp, txr->br, m); > [lakshmis@mau-bsd-10a ~/fortville/hol/sys/dev/ixl]$ > My understanding is that this code is intended to be triggered as a last resort. If that code is firing regularly then the driver is not correctly tracking which queues are alive in the "active_queues" bitmask. _______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"