1 From: Gerald Schaefer <geraldsc@de.ibm.com>
2 Subject: qeth: unregister MAC addresses during recovery.
3 References: bnc#484767,LTC#52200
5 Symptom: After thousands of recovery cycles no more MAC addresses are
6 registered at z/VM GuestLAN adapter.
7 Problem: MAC address table of GuestLAN adapter full.
8 Solution: Unregister MAC addresses from device (layer 2) during
9 recovery cycle. When the device is set online the MAC
10 addresses are registered again on the device.
12 Acked-by: John Jolly <jjolly@suse.de>
14 Index: linux-sles11/drivers/s390/net/qeth_l2_main.c
15 ===================================================================
16 --- linux-sles11.orig/drivers/s390/net/qeth_l2_main.c
17 +++ linux-sles11/drivers/s390/net/qeth_l2_main.c
18 @@ -388,7 +388,8 @@ static int qeth_l2_stop_card(struct qeth
22 - if (!card->use_hard_stop) {
23 + if (!card->use_hard_stop ||
25 __u8 *mac = &card->dev->dev_addr[0];
26 rc = qeth_l2_send_delmac(card, mac);
27 QETH_DBF_TEXT_(SETUP, 2, "Lerr%d", rc);
28 @@ -397,7 +398,8 @@ static int qeth_l2_stop_card(struct qeth
30 if (card->state == CARD_STATE_SOFTSETUP) {
31 qeth_l2_process_vlans(card, 1);
32 - if (!card->use_hard_stop)
33 + if (!card->use_hard_stop ||
35 qeth_l2_del_all_mc(card);
36 qeth_clear_ipacmd_list(card);
37 card->state = CARD_STATE_HARDSETUP;