diff options
author | Lakhvich Dmitriy <LDmitriy@ru.ibm.com> | 2016-06-16 16:18:58 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-06-17 07:16:12 +0200 |
commit | 5f78e29ceebf03a80a5141515bd5b48ca83f0495 (patch) | |
tree | e4a10605c77cb9217d9cea58e9fdaeeea3d87f09 /drivers/s390/net/qeth_l2.h | |
parent | qeth: introduce linearization fail count to stats (diff) | |
download | linux-5f78e29ceebf03a80a5141515bd5b48ca83f0495.tar.xz linux-5f78e29ceebf03a80a5141515bd5b48ca83f0495.zip |
qeth: optimize IP handling in rx_mode callback
In layer3 mode of the qeth driver, multicast IP addresses
from struct net_device and other type of IP addresses
from other sources require mapping to the OSA-card.
This patch simplifies the IP address mapping logic, and changes imple-
mentation of ndo_set_rx_mode callback and ip notifier events.
Addresses are stored in private hashtables instead of lists now.
It allows hardware registration/removal for new/deleted multicast
addresses only.
Signed-off-by: Lakhvich Dmitriy <ldmitriy@ru.ibm.com>
Signed-off-by: Ursula Braun <ubraun@linux.vnet.ibm.com>
Reviewed-by: Evgeny Cherkashin <Eugene.Crosser@ru.ibm.com>
Reviewed-by: Thomas Richter <tmricht@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/s390/net/qeth_l2.h')
-rw-r--r-- | drivers/s390/net/qeth_l2.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/s390/net/qeth_l2.h b/drivers/s390/net/qeth_l2.h index 0767556404bd..29d9fb3890ad 100644 --- a/drivers/s390/net/qeth_l2.h +++ b/drivers/s390/net/qeth_l2.h @@ -12,4 +12,11 @@ int qeth_l2_create_device_attributes(struct device *); void qeth_l2_remove_device_attributes(struct device *); void qeth_l2_setup_bridgeport_attrs(struct qeth_card *card); +struct qeth_mac { + u8 mac_addr[OSA_ADDR_LEN]; + u8 is_uc:1; + u8 disp_flag:2; + struct hlist_node hnode; +}; + #endif /* __QETH_L2_H__ */ |