]> git.baikalelectronics.ru Git - kernel.git/commit
s390/qeth: fix promiscuous mode after reset
authorJulian Wiedmann <jwi@linux.ibm.com>
Wed, 18 Dec 2019 15:32:27 +0000 (16:32 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sat, 21 Dec 2019 05:00:27 +0000 (21:00 -0800)
commit3bb891c6f3bc0ee8dcfb28df1b0e2d8877493901
tree7231f4b20bce88afee5553066fe085a914fb400a
parent275d8ca0afc18ed2325ba9c7059e64a8d37a3901
s390/qeth: fix promiscuous mode after reset

When managing the promiscuous mode during an RX modeset, qeth caches the
current HW state to avoid repeated programming of the same state on each
modeset.

But while tearing down a device, we forget to clear the cached state. So
when the device is later set online again, the initial RX modeset
doesn't program the promiscuous mode since we believe it is already
enabled.
Fix this by clearing the cached state in the tear-down path.

Note that for the SBP variant of promiscuous mode, this accidentally
works right now because we unconditionally restore the SBP role while
re-initializing.

Fixes: a5a090d6ef88 ("qeth: new qeth device driver")
Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Reviewed-by: Alexandra Winter <wintera@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_l2_main.c
drivers/s390/net/qeth_l2_sys.c
drivers/s390/net/qeth_l3_main.c