Skip to content

Trim linux headers to LTS kernel versions for 4.x and 5.x and include new LTS versions for 6.x kernels.#2350

Open
ddelnano wants to merge 3 commits into
mainfrom
ddelnano/update-kernel-versions
Open

Trim linux headers to LTS kernel versions for 4.x and 5.x and include new LTS versions for 6.x kernels.#2350
ddelnano wants to merge 3 commits into
mainfrom
ddelnano/update-kernel-versions

Conversation

@ddelnano
Copy link
Copy Markdown
Member

@ddelnano ddelnano commented Apr 7, 2026

Summary: Trim linux headers to LTS kernel versions for 4.x and 5.x and include new LTS versions for 6.x kernels.

Relevant Issues: #2275, #2344

Type of change: /kind dependency

Test Plan: Deploy a vizier on the following platforms and compared pl7 headers vs the new pl8

  • Bottlerocket
  • Amazon Linux
  • k0s (6.12 kernel)
  • Google COS
  • Verified that the new build process via make prepare creates similarly sized tar files and has roughly the same files present (some files were missing like .config, Makefile, Module.symvers, Kconfig, compile.h, but not of these are used by the PEM)
Bottlerocket /etc/os-release
I20260410 02:06:57.094861  9891 system_info.cc:35] /host/etc/os-release:
NAME=Bottlerocket
ID=bottlerocket
VERSION="1.57.0 (aws-k8s-1.33)"
PRETTY_NAME="Bottlerocket OS 1.57.0 (aws-k8s-1.33)"
VARIANT_ID=aws-k8s-1.33
VERSION_ID=1.57.0
BUILD_ID=beaadc52
VENDOR_NAME=Bottlerocket
HOME_URL="https://github.com/bottlerocket-os/bottlerocket"
SUPPORT_URL="https://github.com/bottlerocket-os/bottlerocket/discussions"
BUG_REPORT_URL="https://github.com/bottlerocket-os/bottlerocket/issues"
DOCUMENTATION_URL="https://bottlerocket.dev"
Google COS /etc/os-release
I20260410 01:17:27.298167 14802 system_info.cc:35] /host/etc/os-release:
NAME="Container-Optimized OS"
ID=cos
PRETTY_NAME="Container-Optimized OS from Google"
HOME_URL="https://cloud.google.com/container-optimized-os/docs"
BUG_REPORT_URL="https://cloud.google.com/container-optimized-os/docs/resources/support-policy#contact_us"
GOOGLE_METRICS_PRODUCT_ID=26
KERNEL_COMMIT_ID=46c2d01887bed5038cc2b8bbd801ae2f7985e7f0
GOOGLE_CRASH_ID=Lakitu
VERSION=125
VERSION_ID=125
BUILD_ID=19216.104.126
header size comparision
  Size Comparison
  ┌──────────┬────────┬───────────┬─────────┬─────────┐
  │ Version  │  Arch  │ pl8 opt  │ pl8 orig  │  pl7  │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 4.18.20  │ x86_64 │ 7.6M      │ 9.9M    │ 7.7M    │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 4.18.20  │ arm64  │ 7.3M      │ 8.1M    │ 7.5M    │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 5.10.252 │ x86_64 │ 8.7M      │ 12M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 5.10.252 │ arm64  │ 8.4M      │ 9.9M    │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 5.14.21  │ x86_64 │ 8.9M      │ 12M     │ 8.8M    │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 5.14.21  │ arm64  │ 8.6M      │ 11M     │ 8.8M    │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.1.167  │ x86_64 │ 9.7M      │ 13M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.1.167  │ arm64  │ 9.4M      │ 12M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.6.132  │ x86_64 │ 11M       │ 13M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.6.132  │ arm64  │ 9.8M      │ 13M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.12.80  │ x86_64 │ 11M       │ 14M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.12.80  │ arm64  │ 11M       │ 14M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.18.21  │ x86_64 │ 12M       │ 14M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.18.21  │ arm64  │ 11M       │ 16M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.19.10  │ x86_64 │ 12M       │ 14M     │ N/A     │
  ├──────────┼────────┼───────────┼─────────┼─────────┤
  │ 6.19.10  │ arm64  │ 12M       │ 16M     │ N/A     │
  └──────────┴────────┴───────────┴─────────┴─────────┘

Changelog Message: Update the vizier-pem's prepackaged linux headers to work with newer AMI / cloud images. This fixes an issue where some platforms which don't have linux header packages (like Google COS) wouldn't show protocol tracing data (#2344)

Comment on lines +84 to +93
# Remove non-header files from arch/ to reduce size.
# Only headers (.h), Makefiles, Kconfigs, and Kbuilds are needed.
find "${HEADERS_DIR}/arch" -type f \
! -name '*.h' \
! -name 'Makefile' \
! -name 'Kconfig*' \
! -name 'Kbuild*' \
-delete
# Clean up empty directories left behind.
find "${HEADERS_DIR}/arch" -type d -empty -delete
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the difference between the pl8 opt and pl8 orig headers. See table in Test Plan for more details.

ddelnano added 3 commits May 11, 2026 22:33
…el header builds

Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
Signed-off-by: Dom Del Nano <ddelnano@gmail.com>
@ddelnano ddelnano force-pushed the ddelnano/update-kernel-versions branch from 2309241 to 33da6d0 Compare May 12, 2026 05:33
@ddelnano ddelnano marked this pull request as ready for review May 12, 2026 13:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant