diff options
author | Arjun Vynipadath | 2019-02-01 12:37:04 +0100 |
---|---|---|
committer | David S. Miller | 2019-02-03 20:08:36 +0100 |
commit | 3f8cfd0d95e65ddc6aef70ef28b80cdc3d8ad7e4 (patch) | |
tree | cc1780dc4e172c50a604d374694bceb6629fba05 /drivers/net/ethernet/chelsio/cxgb4/cxgb4.h | |
parent | ipv4/igmp: Don't drop IGMP pkt with zeros src addr (diff) | |
download | kernel-qcow2-linux-3f8cfd0d95e65ddc6aef70ef28b80cdc3d8ad7e4.tar.gz kernel-qcow2-linux-3f8cfd0d95e65ddc6aef70ef28b80cdc3d8ad7e4.tar.xz kernel-qcow2-linux-3f8cfd0d95e65ddc6aef70ef28b80cdc3d8ad7e4.zip |
cxgb4/cxgb4vf: Program hash region for {t4/t4vf}_change_mac()
{t4/t4_vf}_change_mac() API's were only doing additions to MPS_TCAM.
This will fail, when the number of tcam entries is limited particularly
in vf's.
This fix programs hash region with the mac address, when TCAM
addtion fails for {t4/t4vf}_change_mac(). Since the locally maintained
driver list for hash entries is shared across mac_{sync/unsync}(),
added an extra parameter if_mac to track the address added thorugh
{t4/t4vf}_change_mac()
Signed-off-by: Arjun Vynipadath <arjun@chelsio.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/chelsio/cxgb4/cxgb4.h')
-rw-r--r-- | drivers/net/ethernet/chelsio/cxgb4/cxgb4.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h b/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h index 2d1ca920601e..568715a13b5c 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4.h @@ -568,7 +568,7 @@ struct sge_rspq; struct port_info { struct adapter *adapter; u16 viid; - s16 xact_addr_filt; /* index of exact MAC address filter */ + int xact_addr_filt; /* index of exact MAC address filter */ u16 rss_size; /* size of VI's RSS table slice */ s8 mdio_addr; enum fw_port_type port_type; @@ -860,6 +860,7 @@ struct doorbell_stats { struct hash_mac_addr { struct list_head list; u8 addr[ETH_ALEN]; + unsigned int iface_mac; }; struct uld_msix_bmap { |