]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
Merge branch 'bpf-fix-short-ipv4-ipv6-handling-in-test_run_skb'
authorAlexei Starovoitov <ast@kernel.org>
Sun, 12 Apr 2026 22:42:57 +0000 (15:42 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Sun, 12 Apr 2026 22:42:57 +0000 (15:42 -0700)
commit71b500afd2f7336f5b6c6026f2af546fc079be26
treeea85eea33e93b218bbc7c04a87fd9f2d47fcd296
parent47687a29b2c3acc9aa553737d482645813878aed
parentf1cc94665df907a85589ddb5fe74d7768ff61533
Merge branch 'bpf-fix-short-ipv4-ipv6-handling-in-test_run_skb'

Sun Jian says:

====================
bpf: fix short IPv4/IPv6 handling in test_run_skb

bpf_prog_test_run_skb() may access IPv4/IPv6 network headers based on
skb->protocol even when the provided test input only contains an
Ethernet header.

Fix it by rejecting such short IPv4/IPv6 inputs before accessing the
L3 headers, and add a selftest that exercises the reported
bpf_skb_adjust_room() path on ETH_HLEN-sized IPv4/IPv6 EtherType
inputs.

Changes in v4:
- Split the selftests into a separate patch.
- Rework the selftest to actually execute a BPF program calling
  bpf_skb_adjust_room().
- Reuse a single struct ethhdr eth_hlen and initialize h_proto from
  the test case table.
- Add the Fixes tag to the test_run.c patch.

Link: https://lore.kernel.org/bpf/CABFUUZF_CWQZrRk=L9cNxO=8Z4iSgGfXi3J=hpzeyTKDbfE2-w@mail.gmail.com/T/#mfabfe7e86bb30c0141fbc9f751b8b1cb07767f01
====================

Link: https://patch.msgid.link/20260408034623.180320-1-sun.jian.kdev@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>