Changeset View
Changeset View
Standalone View
Standalone View
sys/dev/ixl/ixl_pf_main.c
Show First 20 Lines • Show All 1,108 Lines • ▼ Show 20 Lines | ixl_reconfigure_filters(struct ixl_vsi *vsi) | ||||
*/ | */ | ||||
LIST_INIT(&tmp); | LIST_INIT(&tmp); | ||||
LIST_CONCAT(&tmp, &vsi->ftl, ixl_mac_filter, ftle); | LIST_CONCAT(&tmp, &vsi->ftl, ixl_mac_filter, ftle); | ||||
cnt = vsi->num_hw_filters; | cnt = vsi->num_hw_filters; | ||||
vsi->num_hw_filters = 0; | vsi->num_hw_filters = 0; | ||||
ixl_add_hw_filters(vsi, &tmp, cnt); | 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 | |||||
krzysztof.galazka_intel.com: The part about a filter list does not seem correct to me. ixl_init_filters exits early in case… | |||||
nyan_myuji.xyzAuthorUnsubmitted Done Inline ActionsThis is very interesting, as when I was tracking done the panic, the vsi->ftl contains exactly 1 filter of IXL_VLAN_ANY, and that lead me to think it was intended. nyan_myuji.xyz: This is very interesting, as when I was tracking done the panic, the vsi->ftl contains exactly… | |||||
* IXL_VLAN_ANY filter so we can skip that as well. | |||||
*/ | |||||
if (hw == NULL) | |||||
return; | |||||
/* Filter could be removed if MAC address was changed */ | /* Filter could be removed if MAC address was changed */ | ||||
ixl_add_filter(vsi, hw->mac.addr, IXL_VLAN_ANY); | ixl_add_filter(vsi, hw->mac.addr, IXL_VLAN_ANY); | ||||
if ((if_getcapenable(vsi->ifp) & IFCAP_VLAN_HWFILTER) == 0) | if ((if_getcapenable(vsi->ifp) & IFCAP_VLAN_HWFILTER) == 0) | ||||
return; | return; | ||||
/* | /* | ||||
* VLAN HW filtering is enabled, make sure that filters | * VLAN HW filtering is enabled, make sure that filters | ||||
* for all registered VLAN tags are configured | * for all registered VLAN tags are configured | ||||
▲ Show 20 Lines • Show All 3,569 Lines • Show Last 20 Lines |
The part about a filter list does not seem correct to me. ixl_init_filters exits early in case of VF VSI. I think it is added later with a virtchnl message. Although as Eric said SR-IOV support needs more attention so getting rid of this panic is a good way to start. Thanks!