summaryrefslogtreecommitdiff
path: root/sys/dev/ixl
diff options
context:
space:
mode:
authorYan Ka Chiu <nyan@myuji.xyz>2022-07-13 01:16:29 +0000
committerEric Joyner <erj@FreeBSD.org>2022-07-13 01:17:03 +0000
commite706512a2b64fa2741144caf056c9fe923b60004 (patch)
tree0014c34520bc6734b7c939f6b71bcb6f7521d90b /sys/dev/ixl
parentbecd9908beb8f1b47ddc6628cb005185a26ec85c (diff)
Diffstat (limited to 'sys/dev/ixl')
-rw-r--r--sys/dev/ixl/ixl_pf_main.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sys/dev/ixl/ixl_pf_main.c b/sys/dev/ixl/ixl_pf_main.c
index 8b01ec8a718f..0b1604cc4918 100644
--- a/sys/dev/ixl/ixl_pf_main.c
+++ b/sys/dev/ixl/ixl_pf_main.c
@@ -1114,6 +1114,14 @@ ixl_reconfigure_filters(struct ixl_vsi *vsi)
ixl_add_hw_filters(vsi, &tmp, cnt);
+ /*
+ * When the vsi is allocated for the VFs, both vsi->hw and vsi->ifp
+ * will be NULL. Furthermore, the ftl of such vsi already contains
+ * IXL_VLAN_ANY filter so we can skip that as well.
+ */
+ if (hw == NULL)
+ return;
+
/* Filter could be removed if MAC address was changed */
ixl_add_filter(vsi, hw->mac.addr, IXL_VLAN_ANY);