]> git.proxmox.com Git - mirror_ubuntu-focal-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)
committerPaolo Pisati <paolo.pisati@canonical.com>
Thu, 30 Jan 2020 15:23:16 +0000 (16:23 +0100)
commitc62293e2260dd2c70876a68922c922545839491c
tree9179ce7675bfe40c3e61413df30f878804f7f79d
parent411245fead78a0285e79fb8b09afd1d43d26727f
s390/qeth: fix promiscuous mode after reset

BugLink: https://bugs.launchpad.net/bugs/1860130
[ Upstream commit 0f399305cd31e5c813086eaa264f7f47e205c10e ]

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: 4a71df50047f ("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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
drivers/s390/net/qeth_l2_main.c
drivers/s390/net/qeth_l2_sys.c
drivers/s390/net/qeth_l3_main.c