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 =