diff options
author | Carsten Otte <cotte@de.ibm.com> | 2010-07-22 19:15:04 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-07-23 15:36:22 -0400 |
commit | 75e0de13631e115768a97131a2d7f5259217512d (patch) | |
tree | bdbcbe95412af3a7812903a01452cbe0849b9659 /drivers/s390 | |
parent | 6298263ac0a9aab94b399d30f67e355edc4c4f49 (diff) |
qeth: Clear mac_bits field when switching between Layer 2 and Layer 3
This patch fixes a problem that occurs when switching from layer 3 to layer 2
mode. Resetting this mac_bits makes sure that we retrieve our mac address from
the card, otherwise the interface simply would'nt work.
Signed-off-by: Carsten Otte <cotte@de.ibm.com>
Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/net/qeth_core_sys.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/s390/net/qeth_core_sys.c b/drivers/s390/net/qeth_core_sys.c index 2eb022ff2610..6b7fd88e8e4d 100644 --- a/drivers/s390/net/qeth_core_sys.c +++ b/drivers/s390/net/qeth_core_sys.c | |||
@@ -433,6 +433,7 @@ static ssize_t qeth_dev_layer2_store(struct device *dev, | |||
433 | if (card->options.layer2 == newdis) | 433 | if (card->options.layer2 == newdis) |
434 | goto out; | 434 | goto out; |
435 | else { | 435 | else { |
436 | card->info.mac_bits = 0; | ||
436 | if (card->discipline.ccwgdriver) { | 437 | if (card->discipline.ccwgdriver) { |
437 | card->discipline.ccwgdriver->remove(card->gdev); | 438 | card->discipline.ccwgdriver->remove(card->gdev); |
438 | qeth_core_free_discipline(card); | 439 | qeth_core_free_discipline(card); |