From 5f78e29ceebf03a80a5141515bd5b48ca83f0495 Mon Sep 17 00:00:00 2001 From: Lakhvich Dmitriy Date: Thu, 16 Jun 2016 16:18:58 +0200 Subject: 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 Signed-off-by: Ursula Braun Reviewed-by: Evgeny Cherkashin Reviewed-by: Thomas Richter Signed-off-by: David S. Miller --- drivers/s390/net/qeth_l2.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'drivers/s390/net/qeth_l2.h') 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__ */ -- cgit v1.2.3