Module Name:    src
Committed By:   msaitoh
Date:           Mon Jan 30 06:11:56 UTC 2017

Modified Files:
        src/sys/dev/pci/ixgbe: ixv.c

Log Message:
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


To generate a diff of this commit:
cvs rdiff -u -r1.33 -r1.34 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/ixv.c
diff -u src/sys/dev/pci/ixgbe/ixv.c:1.33 src/sys/dev/pci/ixgbe/ixv.c:1.34
--- src/sys/dev/pci/ixgbe/ixv.c:1.33	Thu Jan 19 09:42:08 2017
+++ src/sys/dev/pci/ixgbe/ixv.c	Mon Jan 30 06:11:56 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.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_msix_que(void *arg)
 	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 @@ ixv_setup_interface(device_t dev, struct
 #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 =

Reply via email to