openwrt/target/linux
Antonio Pastor da7ab64f1f kernel: generic: patch: 802.2+LLC - set transport_header offset
Conversion to DSA broke 802.2+LLC+SNAP packet processing. Frames
received by napi_complete_done with GRO and DSA have transport_header
set two bytes short, or pointing 2 bytes before network_header &
skb->data. As snap_rcv expects transport_header to point to SNAP
header (OID:PID) after LLC processing advances offset over LLC header
(llc_rcv & llc_fixup_skb), code doesn't find a match and packet is
dropped.

Image built at this commit operates properly:
  86dadeba48 - generic: add patch for GPON-ONU-34-20BI quirk
Image built at following commit exhibits the issue:
  337e36e0ef - ipq806x: convert each device to DSA implementation

As issue is LLC specific, to avoid impacting non-LLC traffic, and to
follow up on original assumption made on kernel commit fda55eca5a33
("net: introduce skb_transport_header_was_set()") stating "network
stacks usually reset the transport header anyway", llc_fixup_skb to
reset and advance the offset. llc_fixup_skb already assumes the LLC
header is at skb->data, and by definition SNAP header immediately
follows.

Signed-off-by: Antonio Pastor <antonio.pastor@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/17220
Signed-off-by: Robert Marko <robimarko@gmail.com>
2024-12-28 10:55:59 +01:00
..
airoha kernel: bump 6.6 to 6.6.66 2024-12-19 00:38:34 +01:00
apm821xx linux: replace u-boot,env with nvmem,layout 2024-12-27 13:34:58 +01:00
archs38 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
armsr armsr: don't limit kmods to armsr armv8 subtarget 2024-10-29 00:07:55 +01:00
at91 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
ath79 linux: replace u-boot,env with nvmem,layout 2024-12-27 13:34:58 +01:00
bcm27xx bcm27xx: pull 6.6 patches from RPi repo 2024-12-28 09:06:30 +01:00
bcm47xx kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
bcm53xx kernel: bump 6.6 to 6.6.66 2024-12-19 00:38:34 +01:00
bcm4908 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
bmips bmips: dts: fix pinctrl error 2024-12-24 11:23:48 +01:00
d1 build: d1: add SUPPORTED_DEVICES 2024-12-22 11:40:58 +01:00
gemini kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
generic kernel: generic: patch: 802.2+LLC - set transport_header offset 2024-12-28 10:55:59 +01:00
imx kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
ipq40xx linux: replace u-boot,env with nvmem,layout 2024-12-27 13:34:58 +01:00
ipq806x kernel: bump 6.6 to 6.6.64 2024-12-13 21:40:02 +01:00
ixp4xx kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
kirkwood kirkwood: Make the Marvell DSA switch a module 2024-12-16 22:03:05 +01:00
lantiq lantiq: Remove legacy LED migration script 2024-12-27 11:22:29 +01:00
layerscape kernel: bump 6.6 to 6.6.64 2024-12-13 21:40:02 +01:00
loongarch64 kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
malta kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
mediatek linux: replace u-boot,env with nvmem,layout 2024-12-27 13:34:58 +01:00
mpc85xx kernel: bump 6.6 to 6.6.64 2024-12-13 21:40:02 +01:00
mvebu mvebu: fix Linksys power LED 2024-12-27 16:08:19 +01:00
mxs mxs: run kernel_oldconfig 2024-11-23 16:47:53 +01:00
octeon octeon: add kmod-usb-dwc3-octeon to DEFAULT_PACKAGES 2024-12-28 10:36:52 +01:00
omap kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
pistachio kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
qoriq kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
qualcommax linux: replace u-boot,env with nvmem,layout 2024-12-27 13:34:58 +01:00
ramips linux: replace u-boot,env with nvmem,layout 2024-12-27 13:34:58 +01:00
realtek realtek: generate compat_version 2.0 for GS1900 2024-12-24 11:17:52 +01:00
rockchip kernel: bump 6.6 to 6.6.66 2024-12-19 00:38:34 +01:00
sifiveu kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
siflower kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
starfive kernel: bump 6.6 to 6.6.66 2024-12-19 00:38:34 +01:00
stm32 stm32: Remove unnecessary kernel options 2024-11-24 22:51:14 +01:00
sunxi kernel: bump 6.6 to 6.6.61 2024-11-16 00:25:14 +01:00
tegra kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
uml uml: fix glibc-static check with GCC14 2024-06-22 22:06:06 +02:00
x86 x86: Deactivate kernel options with extra overhead 2024-11-24 20:03:59 +01:00
zynq kernel: filter out compiler opts from config 2024-11-17 14:55:16 +01:00
Makefile linux: fix missing default packages in profiles.json 2024-11-17 19:29:06 +01:00