]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
Merge branch 'net-support-stp-on-bridge-in-non-root-netns'
authorPaolo Abeni <pabeni@redhat.com>
Thu, 20 Jul 2023 08:46:33 +0000 (10:46 +0200)
committerPaolo Abeni <pabeni@redhat.com>
Thu, 20 Jul 2023 08:46:33 +0000 (10:46 +0200)
commitac528649f7c63bc233cc0d33cff11f767cc666e3
tree0296e781003471b55dc69b636ed8a85470f5112e
parent9f9d4c1a2e82174a4e799ec405284a2b0de32b6a
parent7ebd00a5a20c48e6020d49a3b2afb3cdfd2da8b7
Merge branch 'net-support-stp-on-bridge-in-non-root-netns'

Kuniyuki Iwashima says:

====================
net: Support STP on bridge in non-root netns.

Currently, STP does not work in non-root netns as llc_rcv() drops
packets from non-root netns.

This series fixes it by making some protocol handlers netns-aware,
which are called from llc_rcv() as follows:

  llc_rcv()
  |
  |- sap->rcv_func : registered by llc_sap_open()
  |
  |  * functions : regsitered by register_8022_client()
  |    -> No in-kernel user call register_8022_client()
  |
  |  * snap_rcv()
  |    |
  |    `- proto->rcvfunc() : registered by register_snap_client()
  |
  |       * aarp_rcv()  : drop packets from non-root netns
  |       * atalk_rcv() : drop packets from non-root netns
  |
  |  * stp_pdu_rcv()
  |    |
  |    `- garp_protos[]->rcv() : registered by stp_proto_register()
  |
  |       * garp_pdu_rcv() : netns-aware
  |       * br_stp_rcv()   : netns-aware
  |
  |- llc_type_handlers[llc_pdu_type(skb) - 1]
  |
  |  * llc_sap_handler()  : NOT netns-aware (Patch 1)
  |  * llc_conn_handler() : NOT netns-aware (Patch 2)
  |
  `- llc_station_handler

     * llc_station_rcv() : netns-aware

Patch 1 & 2 convert not-netns-aware functions and Patch 3 remove the
netns restriction in llc_rcv().

Note this series does not namespacify AF_LLC so that these patches
can be backported to stable without conflicts (at least to 4.14.y).

Another series that adds netns support for AF_LLC will be targeted
to net-next later.
====================

Link: https://lore.kernel.org/r/20230718174152.57408-1-kuniyu@amazon.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>