s390/qeth: Fix vnicc_is_in_use if rx_bcast not set
authorAlexandra Winter <wintera@linux.ibm.com>
Mon, 23 Dec 2019 14:03:24 +0000 (15:03 +0100)
committerDavid S. Miller <davem@davemloft.net>
Wed, 25 Dec 2019 06:41:06 +0000 (22:41 -0800)
commite8a66d800471e2df7f0b484e2e46898b21d1fa82
tree732b36f28e64e2fa813febe031310ba698b66f5d
parent68c57bfd52836e31bff33e5e1fc64029749d2c35
s390/qeth: Fix vnicc_is_in_use if rx_bcast not set

Symptom: After vnicc/rx_bcast has been manually set to 0,
bridge_* sysfs parameters can still be set or written.
Only occurs on HiperSockets, as OSA doesn't support changing rx_bcast.

Vnic characteristics and bridgeport settings are mutually exclusive.
rx_bcast defaults to 1, so manually setting it to 0 should disable
bridge_* parameters.

Instead it makes sense here to check the supported mask. If the card
does not support vnicc at all, bridge commands are always allowed.

Fixes: caa1f0b10d18 ("s390/qeth: add VNICC enable/disable support")
Signed-off-by: Alexandra Winter <wintera@linux.ibm.com>
Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/s390/net/qeth_l2_main.c