Skip to content

[ciqlts9_6] Multiple patches tested (6 commits)#1297

Open
ciq-kernel-automation[bot] wants to merge 6 commits into
ciqlts9_6from
{bmastbergen}_ciqlts9_6
Open

[ciqlts9_6] Multiple patches tested (6 commits)#1297
ciq-kernel-automation[bot] wants to merge 6 commits into
ciqlts9_6from
{bmastbergen}_ciqlts9_6

Conversation

@ciq-kernel-automation
Copy link
Copy Markdown

@ciq-kernel-automation ciq-kernel-automation Bot commented Jun 4, 2026

Summary

A customer has requested the following patchset for 9.6:
https://lore.kernel.org/netdev/20260504101759.3319427-1-nhudson@akamai.com/

This PR has been automatically created after successful completion of all CI stages.

Commit Message(s)

bpf: name the enum for BPF_FUNC_skb_adjust_room flags

commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-2-nhudson@akamai.com/
bpf: refactor masks for ADJ_ROOM flags and encap validation

commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-3-nhudson@akamai.com/
upstream-diff |
  applied with line offset fuzz due to absence of bool decap
    variable (present in bpf-next, not in this tree). Code changes
    are identical to upstream.
bpf: add BPF_F_ADJ_ROOM_DECAP_* flags for tunnel decapsulation

commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-4-nhudson@akamai.com/
bpf: allow new DECAP flags and add guard rails

commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-5-nhudson@akamai.com/
bpf: clear decap state on skb_adjust_room shrink path

commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-6-nhudson@akamai.com/
selftests/bpf: tc_tunnel - pass decap flags for tunnel type

commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-7-nhudson@akamai.com/
upstream-diff |
  The upstream patch targets a newer selftest framework with CO-RE
  support (bpf_cast_to_kern_ctx, bpf_core_cast, bpf_core_enum_value_exists).
  This tree has an older version of test_tc_tunnel.c without those
  features, so the following upstream changes were dropped:
  - CO-RE enum existence checks for flag availability
  - Post-decap GSO gso_type and skb->encapsulation validation
  - TSO disable removal from prog_tests/test_tc_tunnel.c (file absent)
  The functional flag-passing changes (DECAP_L4_GRE, DECAP_L4_UDP,
  DECAP_IPXIP4, DECAP_IPXIP6) to decap_internal/decap_ipv4/decap_ipv6
  are applied as in upstream.

Test Results

✅ Build Stage

Architecture Build Time Total Time
x86_64 30m 48s 31m 44s
aarch64 19m 28s 20m 10s

✅ Boot Verification

✅ Kernel Selftests

Architecture Passed Failed Compared Against Status
x86_64 207 42 ciqlts9_6 ⚠️ No baseline available
aarch64 153 46 ciqlts9_6 ⚠️ No baseline available

✅ LTP Results

Architecture Passed Failed Compared Against Status
x86_64 1453 82 ciqlts9_6 ⚠️ No baseline available
aarch64 1426 83 ciqlts9_6 ⚠️ No baseline available

🤖 This PR was automatically generated by GitHub Actions
Run ID: 26975623488

commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-2-nhudson@akamai.com/

The existing anonymous enum for BPF_FUNC_skb_adjust_room flags is
named to enum bpf_adj_room_flags to enable CO-RE (Compile Once -
Run Everywhere) lookups in BPF programs.

	Co-developed-by: Max Tottenham <mtottenh@akamai.com>
	Signed-off-by: Max Tottenham <mtottenh@akamai.com>
	Co-developed-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Nick Hudson <nhudson@akamai.com>
	Reviewed-by: Willem de Bruijn <willemb@google.com>
	Signed-off-by: Brett Mastbergen <bmastbergen@ciq.com>
commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-3-nhudson@akamai.com/
upstream-diff |
  applied with line offset fuzz due to absence of bool decap
    variable (present in bpf-next, not in this tree). Code changes
    are identical to upstream.

Refactor the helper masks for bpf_skb_adjust_room() flags to simplify
validation logic and introduce:

- BPF_F_ADJ_ROOM_ENCAP_MASK
- BPF_F_ADJ_ROOM_DECAP_MASK

Refactor existing validation checks in bpf_skb_net_shrink()
and bpf_skb_adjust_room() to use the new masks (no behavior change).

This is in preparation for supporting the new decap flags.

	Co-developed-by: Max Tottenham <mtottenh@akamai.com>
	Signed-off-by: Max Tottenham <mtottenh@akamai.com>
	Co-developed-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Nick Hudson <nhudson@akamai.com>
	Signed-off-by: Brett Mastbergen <bmastbergen@ciq.com>
commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-4-nhudson@akamai.com/

Add new bpf_skb_adjust_room() decapsulation flags:

- BPF_F_ADJ_ROOM_DECAP_L4_GRE
- BPF_F_ADJ_ROOM_DECAP_L4_UDP
- BPF_F_ADJ_ROOM_DECAP_IPXIP4
- BPF_F_ADJ_ROOM_DECAP_IPXIP6

These flags let BPF programs describe which tunnel layer is being
removed, so later changes can update tunnel-related GSO state
accordingly during decapsulation.

This patch only introduces the UAPI flag definitions and helper
documentation.

	Co-developed-by: Max Tottenham <mtottenh@akamai.com>
	Signed-off-by: Max Tottenham <mtottenh@akamai.com>
	Co-developed-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Nick Hudson <nhudson@akamai.com>
	Reviewed-by: Willem de Bruijn <willemb@google.com>
	Signed-off-by: Brett Mastbergen <bmastbergen@ciq.com>
commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-5-nhudson@akamai.com/

Add checks to require shrink-only decap, reject conflicting decap flag
combinations, and verify removed length is sufficient for claimed header
decapsulation.

	Co-developed-by: Max Tottenham <mtottenh@akamai.com>
	Signed-off-by: Max Tottenham <mtottenh@akamai.com>
	Co-developed-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Nick Hudson <nhudson@akamai.com>
	Reviewed-by: Willem de Bruijn <willemb@google.com>
	Signed-off-by: Brett Mastbergen <bmastbergen@ciq.com>
commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-6-nhudson@akamai.com/

On shrink in bpf_skb_adjust_room(), apply decapsulation state updates
according to BPF_F_ADJ_ROOM_DECAP_* flags.

For GSO skbs, clear only the tunnel gso_type bits that correspond to the
requested decap layer:
- DECAP_L4_UDP: SKB_GSO_UDP_TUNNEL{,_CSUM}
- DECAP_L4_GRE: SKB_GSO_GRE{,_CSUM}
- DECAP_IPXIP4: SKB_GSO_IPXIP4
- DECAP_IPXIP6: SKB_GSO_IPXIP6

Then clear skb->encapsulation only if no tunnel GSO bits remain, keeping
encapsulation set for cases such as ESP-in-UDP where tunnel state remains.

For non-GSO skbs, there are no tunnel GSO bits to consult, so clear
skb->encapsulation directly when DECAP_L4_* or DECAP_IPXIP_* flags are set.

This keeps decap state handling consistent between GSO and non-GSO packets.

	Co-developed-by: Max Tottenham <mtottenh@akamai.com>
	Signed-off-by: Max Tottenham <mtottenh@akamai.com>
	Co-developed-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Anna Glasgall <aglasgal@akamai.com>
	Signed-off-by: Nick Hudson <nhudson@akamai.com>
	Signed-off-by: Brett Mastbergen <bmastbergen@ciq.com>
commit-author Nick Hudson <nhudson@akamai.com>
commit -
commit-source https://lore.kernel.org/netdev/20260504101759.3319427-7-nhudson@akamai.com/
upstream-diff |
  The upstream patch targets a newer selftest framework with CO-RE
  support (bpf_cast_to_kern_ctx, bpf_core_cast, bpf_core_enum_value_exists).
  This tree has an older version of test_tc_tunnel.c without those
  features, so the following upstream changes were dropped:
  - CO-RE enum existence checks for flag availability
  - Post-decap GSO gso_type and skb->encapsulation validation
  - TSO disable removal from prog_tests/test_tc_tunnel.c (file absent)
  The functional flag-passing changes (DECAP_L4_GRE, DECAP_L4_UDP,
  DECAP_IPXIP4, DECAP_IPXIP6) to decap_internal/decap_ipv4/decap_ipv6
  are applied as in upstream.

Pass the new BPF_F_ADJ_ROOM_DECAP_* flags through the decap path so
the kernel clears the correct GSO and encapsulation state when removing
tunnel headers.

	Signed-off-by: Nick Hudson <nhudson@akamai.com>
	Signed-off-by: Brett Mastbergen <bmastbergen@ciq.com>
@ciq-kernel-automation ciq-kernel-automation Bot added the created-by-kernelci Tag PRs that were automatically created when a user branch was pushed to the repo (kernelCI) label Jun 4, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 4, 2026

🤖 Validation Checks In Progress Workflow run: https://github.com/ctrliq/kernel-src-tree/actions/runs/26986293632

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 4, 2026

Validation checks completed successfully View full results: https://github.com/ctrliq/kernel-src-tree/actions/runs/26986293632

@bmastbergen bmastbergen changed the title [ciqlts9_6] Multiple patches tested (6 commits) [ciqlts9_6] [GOOGLE-42] Multiple patches tested (6 commits) Jun 5, 2026
@bmastbergen bmastbergen changed the title [ciqlts9_6] [GOOGLE-42] Multiple patches tested (6 commits) [ciqlts9_6] Multiple patches tested (6 commits) Jun 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

created-by-kernelci Tag PRs that were automatically created when a user branch was pushed to the repo (kernelCI)

Development

Successfully merging this pull request may close these issues.

2 participants