]> git.baikalelectronics.ru Git - kernel.git/commit
Merge branch 'bridge-rx-simplify-fwd-consolidate'
authorDavid S. Miller <davem@davemloft.net>
Sun, 17 Jul 2016 02:57:38 +0000 (19:57 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sun, 17 Jul 2016 02:57:38 +0000 (19:57 -0700)
commitf5a1a8fa57b653321606442fd41e0fb5aa5bb92e
tree62c6e3dddb08ece908deb37163613ffd7204ef3f
parent866ef44a54f8117beb13b492eac2d5073da8834e
parent742b5638b5a8977bc0a1376e52bbe3ca405bd30c
Merge branch 'bridge-rx-simplify-fwd-consolidate'

Nikolay Aleksandrov says:

====================
net: bridge: simplify receive path and consolidate forwarding paths

This set tries to simplify the receive and forwarding paths. Patch 01 is
a trivial style adjustment, patch 02 removes one conditional from the
unicast fast path, patch 03 removes another conditional and more imporantly
removes the skb0/skb2 ambiguity about locally receiving the skb and
switches to a boolean called "local_rcv".
Patch 04 is the most important change which consolidates the forwarding
paths for locally originated and forwarded packets into __br_forward. This
allows us to remove the function pointers giving a minor performance boost,
more importantly it makes it much easier to reason about the forwarding
path and reduces the code duplication that was needed when making changes.
Also it allows the receive path to fully setup the environment prior to
calling any forwarding functions (i.e. to properly set unicast, local_rcv
and search for unicast/mcast dst).
Functionally everything should stay the same after this set.

I've done basic tests with unicast/multicast/broadcast Tx/Rx. Please
review carefully.
====================

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