android_kernel_motorola_sm6375/drivers/net
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Daniel Borkmann 258db876c3
BACKPORT: bpf: Add redirect_peer helper
Add an efficient ingress to ingress netns switch that can be used out of tc BPF
programs in order to redirect traffic from host ns ingress into a container
veth device ingress without having to go via CPU backlog queue [0]. For local
containers this can also be utilized and path via CPU backlog queue only needs
to be taken once, not twice. On a high level this borrows from ipvlan which does
similar switch in __netif_receive_skb_core() and then iterates via another_round.
This helps to reduce latency for mentioned use cases.

Pod to remote pod with redirect(), TCP_RR [1]:

  # percpu_netperf 10.217.1.33
          RT_LATENCY:         122.450         (per CPU:         122.666         122.401         122.333         122.401 )
        MEAN_LATENCY:         121.210         (per CPU:         121.100         121.260         121.320         121.160 )
      STDDEV_LATENCY:         120.040         (per CPU:         119.420         119.910         125.460         115.370 )
         MIN_LATENCY:          46.500         (per CPU:          47.000          47.000          47.000          45.000 )
         P50_LATENCY:         118.500         (per CPU:         118.000         119.000         118.000         119.000 )
         P90_LATENCY:         127.500         (per CPU:         127.000         128.000         127.000         128.000 )
         P99_LATENCY:         130.750         (per CPU:         131.000         131.000         129.000         132.000 )

    TRANSACTION_RATE:       32666.400         (per CPU:        8152.200        8169.842        8174.439        8169.897 )

Pod to remote pod with redirect_peer(), TCP_RR:

  # percpu_netperf 10.217.1.33
          RT_LATENCY:          44.449         (per CPU:          43.767          43.127          45.279          45.622 )
        MEAN_LATENCY:          45.065         (per CPU:          44.030          45.530          45.190          45.510 )
      STDDEV_LATENCY:          84.823         (per CPU:          66.770          97.290          84.380          90.850 )
         MIN_LATENCY:          33.500         (per CPU:          33.000          33.000          34.000          34.000 )
         P50_LATENCY:          43.250         (per CPU:          43.000          43.000          43.000          44.000 )
         P90_LATENCY:          46.750         (per CPU:          46.000          47.000          47.000          47.000 )
         P99_LATENCY:          52.750         (per CPU:          51.000          54.000          53.000          53.000 )

    TRANSACTION_RATE:       90039.500         (per CPU:       22848.186       23187.089       22085.077       21919.130 )

  [0] https://linuxplumbersconf.org/event/7/contributions/674/attachments/568/1002/plumbers_2020_cilium_load_balancer.pdf
  [1] https://github.com/borkmann/netperf_scripts/blob/master/percpu_netperf

Change-Id: I3dab8ed0c484fb100e1c52782c3192be835d5c98
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/bpf/20201010234006.7075-3-daniel@iogearbox.net
2026-01-14 18:12:44 -08:00
..
appletalk
arcnet
bonding net: bonding: fix possible peer notify event loss or dup issue 2025-10-29 13:59:59 +01:00
caif
can Merge branch 'android11-5.4-lts' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina 2025-12-11 01:41:51 -08:00
dsa net: dsa: b53: stop reading ARL entries if search is done 2025-12-03 12:45:15 +01:00
ethernet UPSTREAM: bpf: Mutex protect used_maps array and count 2026-01-14 18:12:29 -08:00
fddi
fjes
hamradio
hippi
hyperv
ieee802154 ieee802154: ca8210: Use proper setters and getters for bitwise types 2025-06-04 14:32:31 +02:00
ipvlan
netdevsim
phy Merge branch 'android11-5.4-lts' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina 2025-12-11 01:41:51 -08:00
plip
ppp ppp: fix memory leak in pad_compress_skb 2025-09-09 18:43:58 +02:00
slip
team
usb fixup! net: usb: rtl8150: Fix frame padding 2025-12-11 02:36:44 -08:00
vmxnet3 vmxnet3: update MTU after device quiesce 2025-09-09 18:44:01 +02:00
wan
wimax
wireguard UPSTREAM: wireguard: send: annotate intentional data race in checking empty queue 2025-09-24 12:16:42 +02:00
wireless Merge branch 'android11-5.4-lts' of https://android.googlesource.com/kernel/common into android13-5.4-lahaina 2025-12-11 01:41:51 -08:00
xen-netback
dummy.c
eql.c
geneve.c BACKPORT: udp_tunnel: add central NIC RX port offload infrastructure 2026-01-14 18:12:10 -08:00
gtp.c
ifb.c
Kconfig UPSTREAM: crypto: mips/poly1305 - enable for all MIPS processors 2025-09-24 12:16:39 +02:00
LICENSE.SRC
loopback.c UPSTREAM: net: provide dev_lstats_add() helper 2026-01-14 18:12:42 -08:00
macsec.c
macvlan.c
macvtap.c
Makefile UPSTREAM: net: WireGuard secure network tunnel 2025-09-24 12:16:34 +02:00
mdio.c
mii.c
net_failover.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tap.c
thunderbolt.c
tun.c BACKPORT: xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame 2026-01-14 17:48:07 -08:00
veth.c BACKPORT: bpf: Add redirect_peer helper 2026-01-14 18:12:44 -08:00
virtio_net.c BACKPORT: xdp: Rename convert_to_xdp_frame in xdp_convert_buff_to_frame 2026-01-14 17:48:07 -08:00
vrf.c vrf: Drop existing dst reference in vrf_ip6_input_dst 2025-08-28 16:21:20 +02:00
vsockmon.c
vxlan.c BACKPORT: udp_tunnel: add central NIC RX port offload infrastructure 2026-01-14 18:12:10 -08:00
xen-netfront.c