summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bhyve/pci_virtio_net.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/bhyve/pci_virtio_net.c')
-rw-r--r--usr.sbin/bhyve/pci_virtio_net.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/usr.sbin/bhyve/pci_virtio_net.c b/usr.sbin/bhyve/pci_virtio_net.c
index e988bb6..14bbe0a 100644
--- a/usr.sbin/bhyve/pci_virtio_net.c
+++ b/usr.sbin/bhyve/pci_virtio_net.c
@@ -259,6 +259,7 @@ pci_vtnet_rxwait(struct pci_vtnet_softc *sc)
static void
pci_vtnet_update_status(struct pci_vtnet_softc *sc, uint32_t value)
{
+ int i;
if (value == 0) {
DPRINTF(("vtnet: device reset requested !\n"));
@@ -276,6 +277,12 @@ pci_vtnet_update_status(struct pci_vtnet_softc *sc, uint32_t value)
pci_vtnet_ring_reset(sc, VTNET_RXQ);
pci_vtnet_ring_reset(sc, VTNET_TXQ);
+ for (i = 0; i < VTNET_MAXQ; i++)
+ sc->vsc_msix_table_idx[i] = VIRTIO_MSI_NO_VECTOR;
+
+ sc->vsc_isr = 0;
+ sc->vsc_features = 0;
+
sc->resetting = 0;
}
OpenPOWER on IntegriCloud