From bb714db6d39583a9fbf5d11849c5e2365e7c0d80 Mon Sep 17 00:00:00 2001 From: Vincenzo Maffione Date: Sun, 10 Jan 2021 14:09:00 +0000 Subject: netmap: vtnet: enable/disable krings on any interface reinit See 3d65fd97e85ab807f3b for a detailed explanation. PR: 252453 MFC after: 1 week --- sys/dev/netmap/if_vtnet_netmap.h | 6 ------ sys/dev/netmap/netmap.c | 4 ++++ 2 files changed, 4 insertions(+), 6 deletions(-) (limited to 'sys/dev/netmap') diff --git a/sys/dev/netmap/if_vtnet_netmap.h b/sys/dev/netmap/if_vtnet_netmap.h index a44cc13baae2..f787bf573a28 100644 --- a/sys/dev/netmap/if_vtnet_netmap.h +++ b/sys/dev/netmap/if_vtnet_netmap.h @@ -40,9 +40,6 @@ vtnet_netmap_reg(struct netmap_adapter *na, int state) struct ifnet *ifp = na->ifp; struct vtnet_softc *sc = ifp->if_softc; - /* Stop all txsync/rxsync and disable them. */ - netmap_disable_all_rings(ifp); - /* * Trigger a device reinit, asking vtnet_init_locked() to * also enter or exit netmap mode. @@ -53,9 +50,6 @@ vtnet_netmap_reg(struct netmap_adapter *na, int state) : VTNET_INIT_NETMAP_EXIT); VTNET_CORE_UNLOCK(sc); - /* Enable txsync/rxsync again. */ - netmap_enable_all_rings(ifp); - return (0); } diff --git a/sys/dev/netmap/netmap.c b/sys/dev/netmap/netmap.c index cf85671cae55..cabbd35aec20 100644 --- a/sys/dev/netmap/netmap.c +++ b/sys/dev/netmap/netmap.c @@ -619,6 +619,10 @@ netmap_set_all_rings(struct netmap_adapter *na, int stopped) if (!nm_netmap_on(na)) return; + if (netmap_verbose) { + nm_prinf("%s: %sable all rings", na->name, + (stopped ? "dis" : "en")); + } for_rx_tx(t) { for (i = 0; i < netmap_real_rings(na, t); i++) { netmap_set_ring(na, i, t, stopped); -- cgit v1.3