Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/dev/pci/ixgbe Fix to use softint-based if_input in ixv(4).



details:   https://anonhg.NetBSD.org/src/rev/ddcf4504d72f
branches:  trunk
changeset: 821251:ddcf4504d72f
user:      msaitoh <msaitoh%NetBSD.org@localhost>
date:      Mon Jan 30 06:11:56 2017 +0000

description:
Fix to use softint-based if_input in ixv(4).

See:
  http://mail-index.netbsd.org/source-changes/2016/02/09/msg072521.html
  http://mail-index.netbsd.org/tech-kern/2016/01/14/msg019997.html

diffstat:

 sys/dev/pci/ixgbe/ixv.c |  10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diffs (36 lines):

diff -r d979a844eeab -r ddcf4504d72f sys/dev/pci/ixgbe/ixv.c
--- a/sys/dev/pci/ixgbe/ixv.c   Mon Jan 30 05:02:43 2017 +0000
+++ b/sys/dev/pci/ixgbe/ixv.c   Mon Jan 30 06:11:56 2017 +0000
@@ -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.33 2017/01/19 09:42:08 msaitoh Exp $*/
+/*$NetBSD: ixv.c,v 1.34 2017/01/30 06:11:56 msaitoh Exp $*/
 
 #include "opt_inet.h"
 #include "opt_inet6.h"
@@ -897,7 +897,12 @@
        ixv_disable_queue(adapter, que->msix);
        ++que->irqs.ev_count;
 
+#ifdef __NetBSD__
+       /* Don't run ixgbe_rxeof in interrupt context */
+       more = true;
+#else
        more = ixgbe_rxeof(que);
+#endif
 
        IXGBE_TX_LOCK(txr);
        ixgbe_txeof(txr);
@@ -1606,8 +1611,9 @@
 #endif
        ifp->if_snd.ifq_maxlen = adapter->num_tx_desc - 2;
 
-       if_attach(ifp);
+       if_initialize(ifp);
        ether_ifattach(ifp, adapter->hw.mac.addr);
+       if_register(ifp);
        ether_set_ifflags_cb(ec, ixv_ifflags_cb);
 
        adapter->max_frame_size =



Home | Main Index | Thread Index | Old Index