]> git.baikalelectronics.ru Git - kernel.git/commit
Merge branch 'mlxsw-dedicated-router-notification-block'
authorDavid S. Miller <davem@davemloft.net>
Sun, 8 May 2022 10:46:21 +0000 (11:46 +0100)
committerDavid S. Miller <davem@davemloft.net>
Sun, 8 May 2022 10:46:21 +0000 (11:46 +0100)
commit0d7be3728075a246616934c349d9c4bc09c01464
tree89f81ff2571c38ba7ff307672efb63dba29aca73
parentf288d55323b50e7b2a65b8823faf05870af96ba8
parentd5b980bce7d88f4ff7c0ff075763fa6b9d421853
Merge branch 'mlxsw-dedicated-router-notification-block'

Ido Schimmel says:

====================
mlxsw: A dedicated notifier block for router code

Petr says:

Currently all netdevice events are handled in the centralized notifier
handler maintained by spectrum.c. Since a number of events are involving
router code, spectrum.c needs to dispatch them to spectrum_router.c. The
spectrum module therefore needs to know more about the router code than it
should have, and there is are several API points through which the two
modules communicate.

In this patchset, move bulk of the router-related event handling to the
router code. Some of the knowledge has to stay: spectrum.c cannot veto
events that the router supports, and vice versa. But beyond that, the two
can ignore each other's details, which leads to more focused and simpler
code.

As a side effect, this fixes L3 HW stats support on tunnel netdevices.

The patch set progresses as follows:

- In patch #1, change spectrum code to not bounce L3 enslavement, which the
  router code supports.

- In patch #2, add a new do-nothing notifier block to the router code.

- In patches #3-#6, move router-specific event handling to the router
  module. In patch #7, clean up a comment.

- In patch #8, use the advantage that all router event handling is in the
  router code and clean up taking router lock.

- mlxsw supports L3 HW stats on tunnels as of this patchset. Patches #9 and
  #10 therefore add a selftest for L3 HW stats support on tunnels.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>