diff options
author | Alexandra Winter <wintera@linux.ibm.com> | 2021-08-06 17:26:02 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-08-07 09:44:02 +0100 |
commit | 4e20e73e631ac4c2f7af603f14bd44a6d77d919c (patch) | |
tree | 5df0d838739d0dc85c28d32c4e8820195f44cca9 /lib/errseq.c | |
parent | 60bb1089467d52c68190f813105c897b0933bbcc (diff) |
s390/qeth: Switchdev event handler
QETH HiperSockets devices with LEARNING_SYNC capability can be used
to construct a linux bridge with:
2 isolated southbound interfaces:
a) a default network interface
b) a LEARNING-SYNC HiperSockets interface
and 1 non-isolated northbound interface. This is called a 'HiperSockets
Converged Interface' (HSCI).
The existing LEARNING_SYNC functionality is used to update the bridge fdb
with MAC addresses that should be sent-out via the HiperSockets interface,
instead of the default network interface.
Add handling of switchdev events SWITCHDEV_FDB_ADD_TO_DEVICE and
SWITCHDEV_FDB_DEL_TO_DEVICE to the qeth LEARNING_SYNC functionality. Thus
if the northbound bridgeport of an HSCI doesn't only have a single static
MAC address, but instead is a learning bridgeport, work is enqueued, so
the HiperSockets virtual switch (that is external to this Linux instance)
can update its fdb.
When BRIDGE is a loadable module, QETH_L2 mustn't be built-in:
drivers/s390/net/qeth_l2_main.o: in function 'qeth_l2_switchdev_event':
drivers/s390/net/qeth_l2_main.c:927: undefined reference to
'br_port_flag_is_set'
Add Kconfig dependency to enforce usable configurations.
Signed-off-by: Alexandra Winter <wintera@linux.ibm.com>
Reviewed-by: Wenjia Zhang <wenjia@linux.ibm.com>
Signed-off-by: Karsten Graul <kgraul@linux.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'lib/errseq.c')
0 files changed, 0 insertions, 0 deletions