kernel_samsung_a53x/include
Paul Davey 29d463ccea xfrm: Preserve vlan tags for transport mode software GRO
[ Upstream commit 58fbfecab965014b6e3cc956a76b4a96265a1add ]

The software GRO path for esp transport mode uses skb_mac_header_rebuild
prior to re-injecting the packet via the xfrm_napi_dev.  This only
copies skb->mac_len bytes of header which may not be sufficient if the
packet contains 802.1Q tags or other VLAN tags.  Worse copying only the
initial header will leave a packet marked as being VLAN tagged but
without the corresponding tag leading to mangling when it is later
untagged.

The VLAN tags are important when receiving the decrypted esp transport
mode packet after GRO processing to ensure it is received on the correct
interface.

Therefore record the full mac header length in xfrm*_transport_input for
later use in corresponding xfrm*_transport_finish to copy the entire mac
header when rebuilding the mac header for GRO.  The skb->data pointer is
left pointing skb->mac_header bytes after the start of the mac header as
is expected by the network stack and network and transport header
offsets reset to this location.

Fixes: 7785bba299a8 ("esp: Add a software GRO codepath")
Signed-off-by: Paul Davey <paul.davey@alliedtelesis.co.nz>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-11-19 11:32:45 +01:00
..
acpi
asm-generic asm-generic: qspinlock: fix queued_spin_value_unlocked() implementation 2024-11-18 12:11:56 +01:00
clocksource
crypto crypto: af_alg - Disallow multiple in-flight AIO requests 2024-11-18 12:12:26 +01:00
drm drm: Don't treat 0 as -1 in drm_fixp2int_ceil 2024-11-19 08:44:51 +01:00
dt-bindings dt-bindings: clock: Update the videocc resets for sm8150 2024-11-18 12:12:41 +01:00
keys
kunit
kvm
linux xfrm: Preserve vlan tags for transport mode software GRO 2024-11-19 11:32:45 +01:00
math-emu
media
memory
misc
net xfrm: Preserve vlan tags for transport mode software GRO 2024-11-19 11:32:45 +01:00
pcmcia
ras
rdma
scsc
scsi scsi: core: Introduce enum scsi_disposition 2024-11-18 12:13:21 +01:00
sdp
soc soc: fsl: qbman: Add CGR update function 2024-11-19 09:22:35 +01:00
sound ASoC: soc-card: Add storage for PCI SSID 2024-11-18 11:43:13 +01:00
target
test
trace tracing/net_sched: Fix tracepoints that save qdisc_dev() as a string 2024-11-18 23:19:34 +01:00
uapi Input: allocate keycode for Display refresh rate toggle 2024-11-19 09:23:14 +01:00
variant1/linux
vdso
video
xen