]> git.baikalelectronics.ru Git - kernel.git/commit
s390/qeth: simplify L3 dev_id logic
authorJulian Wiedmann <jwi@linux.ibm.com>
Wed, 25 Mar 2020 09:35:01 +0000 (10:35 +0100)
committerDavid S. Miller <davem@davemloft.net>
Wed, 25 Mar 2020 19:07:15 +0000 (12:07 -0700)
commit791245dbf1d94314d1d05ccfaa2e1aef617ffe60
tree87085f7981c20c6e45b12fe806ee3ee7f1085741
parent74b23644011d9df98e0716592eb107671eaeb0a4
s390/qeth: simplify L3 dev_id logic

The logic that deals with errors from qeth_l3_get_unique_id() is quite
complex: it sets card->unique_id to 0xfffe, additionally flags it as
UNIQUE_ID_NOT_BY_CARD and later takes this flag as cue to not propagate
card->unique_id to dev->dev_id. With dev->dev_id thus holding 0,
addrconf_ifid_eui48() applies its default behaviour.

Get rid of all the special bit masks, and just return the old uid in
case of an error. For the vast majority of cases this will be 0 (and so
we still get the desired default behaviour) - with the rare exception
where qeth_l3_get_unique_id() might have been called earlier but the
initialization then failed at a later point.

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_core.h
drivers/s390/net/qeth_l3_main.c