Module Name: src Committed By: msaitoh Date: Mon Feb 13 10:37:37 UTC 2017
Modified Files: src/sys/dev/pci/ixgbe: ixgbe.c ixv.c Log Message: Remove more ix*_start_locked() from interrupt context like previous commit. > Fix a bug that ix*_start_locked() is called in interrput context > (ix*_msix_que). The function is called in softint(ix*_handle_que()). OK'd by >k-nakahara. To generate a diff of this commit: cvs rdiff -u -r1.75 -r1.76 src/sys/dev/pci/ixgbe/ixgbe.c cvs rdiff -u -r1.52 -r1.53 src/sys/dev/pci/ixgbe/ixv.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/pci/ixgbe/ixgbe.c diff -u src/sys/dev/pci/ixgbe/ixgbe.c:1.75 src/sys/dev/pci/ixgbe/ixgbe.c:1.76 --- src/sys/dev/pci/ixgbe/ixgbe.c:1.75 Mon Feb 13 10:13:54 2017 +++ src/sys/dev/pci/ixgbe/ixgbe.c Mon Feb 13 10:37:37 2017 @@ -59,7 +59,7 @@ * POSSIBILITY OF SUCH DAMAGE. */ /*$FreeBSD: head/sys/dev/ixgbe/if_ix.c 302384 2016-07-07 03:39:18Z sbruno $*/ -/*$NetBSD: ixgbe.c,v 1.75 2017/02/13 10:13:54 msaitoh Exp $*/ +/*$NetBSD: ixgbe.c,v 1.76 2017/02/13 10:37:37 msaitoh Exp $*/ #include "opt_inet.h" #include "opt_inet6.h" @@ -1627,13 +1627,6 @@ ixgbe_legacy_irq(void *arg) IXGBE_TX_LOCK(txr); ixgbe_txeof(txr); -#ifdef IXGBE_LEGACY_TX - if (!IFQ_IS_EMPTY(&ifp->if_snd)) - ixgbe_start_locked(txr, ifp); -#else - if (pcq_peek(txr->txr_interq) != NULL) - ixgbe_mq_start_locked(ifp, txr); -#endif IXGBE_TX_UNLOCK(txr); } @@ -1698,10 +1691,6 @@ ixgbe_msix_que(void *arg) IXGBE_TX_LOCK(txr); ixgbe_txeof(txr); -#ifdef IXGBE_LEGACY_TX - if (!IFQ_IS_EMPTY(&adapter->ifp->if_snd)) - ixgbe_start_locked(txr, ifp); -#endif IXGBE_TX_UNLOCK(txr); /* Do AIM now? */ Index: src/sys/dev/pci/ixgbe/ixv.c diff -u src/sys/dev/pci/ixgbe/ixv.c:1.52 src/sys/dev/pci/ixgbe/ixv.c:1.53 --- src/sys/dev/pci/ixgbe/ixv.c:1.52 Mon Feb 13 10:13:54 2017 +++ src/sys/dev/pci/ixgbe/ixv.c Mon Feb 13 10:37:37 2017 @@ -31,7 +31,7 @@ ******************************************************************************/ /*$FreeBSD: head/sys/dev/ixgbe/if_ixv.c 302384 2016-07-07 03:39:18Z sbruno $*/ -/*$NetBSD: ixv.c,v 1.52 2017/02/13 10:13:54 msaitoh Exp $*/ +/*$NetBSD: ixv.c,v 1.53 2017/02/13 10:37:37 msaitoh Exp $*/ #include "opt_inet.h" #include "opt_inet6.h" @@ -933,15 +933,6 @@ ixv_msix_que(void *arg) IXGBE_TX_LOCK(txr); ixgbe_txeof(txr); - /* - ** Make certain that if the stack - ** has anything queued the task gets - ** scheduled to handle it. - */ -#ifdef IXGBE_LEGACY_TX - if (!IFQ_IS_EMPTY(&adapter->ifp->if_snd)) - ixgbe_start_locked(txr, ifp); -#endif IXGBE_TX_UNLOCK(txr); /* Do AIM now? */