i40e: fix disable overflow promiscuous mode
authorAlan Brady <alan.brady@intel.com>
Mon, 12 Dec 2016 23:44:07 +0000 (15:44 -0800)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sun, 19 Feb 2017 04:35:35 +0000 (20:35 -0800)
commita410c821c0cf50bc0b73a91435852cd04b2c7acd
treef959ece0efc9626c2642af08150a57ba035c0ffb
parent4e33e34625103593a71d2bae471ce49cef62ef06
i40e: fix disable overflow promiscuous mode

There exists a bug in which the driver is unable to exit overflow
promiscuous mode after having added "too many" mac filters.  It is
expected that after triggering overflow promiscuous, removing the
failed/extra filters should then disable overflow promiscuous mode.

The bug exists because we were intentionally skipping the sync_vsi_filter
path in cases where we were removing failed filters since they shouldn't
have been added to the firmware in the first place, however we still
need to go through the sync_vsi_filter code path to determine whether or
not it is ok to exit overflow promiscuous mode.  This patch fixes the
bug by making sure we go through the sync_vsi_filter path in cases of
failed filters.

Change-ID: I634d249ca3e5fa50729553137c295e73e7722143
Signed-off-by: Alan Brady <alan.brady@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_main.c