aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Bowling <kbowling@FreeBSD.org>2023-08-24 20:25:21 +0000
committerKevin Bowling <kbowling@FreeBSD.org>2023-08-24 20:46:56 +0000
commitb6b75424c57d6da49967fef39f69080ce6939207 (patch)
tree9f5ab83dd26d72ea8fc339ab471298c500f9df0f
parentf9e0a790ae441f649cc9ff2538dc3a2b2a0a0cb4 (diff)
-rw-r--r--sys/dev/vmware/vmxnet3/if_vmx.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/sys/dev/vmware/vmxnet3/if_vmx.c b/sys/dev/vmware/vmxnet3/if_vmx.c
index 99e84e744d57..2c3530a217f3 100644
--- a/sys/dev/vmware/vmxnet3/if_vmx.c
+++ b/sys/dev/vmware/vmxnet3/if_vmx.c
@@ -180,6 +180,7 @@ static void vmxnet3_enable_intr(struct vmxnet3_softc *, int);
static void vmxnet3_disable_intr(struct vmxnet3_softc *, int);
static void vmxnet3_intr_enable_all(if_ctx_t);
static void vmxnet3_intr_disable_all(if_ctx_t);
+static bool vmxnet3_if_needs_restart(if_ctx_t, enum iflib_restart_event);
typedef enum {
VMXNET3_BARRIER_RD,
@@ -247,6 +248,8 @@ static device_method_t vmxnet3_iflib_methods[] = {
DEVMETHOD(ifdi_suspend, vmxnet3_suspend),
DEVMETHOD(ifdi_resume, vmxnet3_resume),
+ DEVMETHOD(ifdi_needs_restart, vmxnet3_if_needs_restart),
+
DEVMETHOD_END
};
@@ -2505,6 +2508,16 @@ vmxnet3_intr_disable_all(if_ctx_t ctx)
vmxnet3_disable_intr(sc, i);
}
+static bool
+vmxnet3_if_needs_restart(if_ctx_t ctx __unused, enum iflib_restart_event event)
+{
+ switch (event) {
+ case IFLIB_RESTART_VLAN_CONFIG:
+ default:
+ return (false);
+ }
+}
+
/*
* Since this is a purely paravirtualized device, we do not have
* to worry about DMA coherency. But at times, we must make sure