linux: add 6.18 test kernel alongside 6.1#61
Merged
Conversation
benhillis
commented
May 14, 2026
1e78722 to
9e57a5d
Compare
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
This PR expands the Linux “test kernel” build pipeline from a single 6.1 kernel to three LTS lines (6.1/6.6/6.12), and changes the release packaging so kernels are shipped as separate artifacts from openvmm-deps.
Changes:
- Add per-kernel-version sysroots that export
LINUX_VERSION, and updatepkg/linux/build.shto select the corresponding per-version config. - Update the Dockerfile to build three pinned kernel source stages and produce separate output directories for
openvmm-deps/and each kernel. - Update release workflow versioning and artifact layout to publish separate
openvmm-test-linux-<kver>tarballs.
Reviewed changes
Copilot reviewed 10 out of 16 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| sysroots/linux/deps | Removes the legacy linux sysroot deps entry (transition to per-version sysroots). |
| sysroots/linux-6.1/deps | Adds a 6.1 sysroot exporting LINUX_VERSION=6.1. |
| sysroots/linux-6.6/deps | Adds a 6.6 sysroot exporting LINUX_VERSION=6.6. |
| sysroots/linux-6.12/deps | Adds a 6.12 sysroot exporting LINUX_VERSION=6.12. |
| pkg/linux/build.sh | Requires LINUX_VERSION and selects the matching pkg/linux/<ver>/<arch>.config. |
| pkg/linux/README.md | Documents new multi-version layout and how to update/add configs. |
| pkg/linux/6.6/aarch64.config | Adds generated kernel configuration for Linux 6.6 arm64. |
| cgmanifest.json | Adds additional pinned Linux git commits for component governance. |
| README.md | Documents new output directory layout and new release artifact set. |
| Dockerfile | Adds pinned sources and build stages per kernel; output stage now separates artifacts by directory. |
| .github/workflows/build.yml | Updates packaging to emit multiple kernel artifacts and bumps version prefix. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Member
Author
|
I'm going to split this into two PRs. |
0a0b961 to
aec0d7a
Compare
Adds a parallel 6.18 (linux-6.18.y, v6.18.31) test kernel build
mirroring the existing 6.1 LTS pipeline:
- Dockerfile: new src-linux-6.18 source pin, build-linux-6.18 /
result-linux-6.18 stages, and a COPY into the output stage so the
release workflow picks it up alongside linux-6.1/.
- sysroots/linux-6.18/deps: exports LINUX_VERSION=6.18 so the shared
pkg/linux/build.sh selects the 6.18 config tree.
- pkg/linux/6.18/{x86_64,aarch64}.config: seeded from 6.1; CI's
in-build olddefconfig is canonical and may need a follow-up commit
if this seed drifts under CONFIG_WERROR.
- .github/workflows/build.yml: extend KERNELS to '6.1 6.18' so the
release job packages openvmm-test-linux-6.18.<arch>.<ver>.tar.gz.
- cgmanifest.json: regenerated via pkg/Tools/gen-cgmanifest.py to
register the new gregkh/linux pin.
- README.md / pkg/linux/README.md: document the 6.18 artifact and
config layout.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
aec0d7a to
e6f3d08
Compare
moor-coding
approved these changes
May 19, 2026
smalis-msft
approved these changes
May 19, 2026
Contributor
smalis-msft
left a comment
There was a problem hiding this comment.
I'm just going to assume those configs are what we want, not gonna review those whole giant things haha
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a parallel 6.18 (
linux-6.18.y, v6.18.31) test kernel build alongside the existing 6.1 LTS kernel that ships today. The two kernels build side-by-side and are released as separateopenvmm-test-linux-<version>artifacts; the shared initrd is unchanged.Changes
src-linux-6.18source pin (commit6c1de6e6),build-linux-6.18/result-linux-6.18stages mirroring 6.1, and aCOPY --from=result-linux-6.18 / /linux-6.18/line in the output stage.sysroots/linux-6.18/deps: exportsLINUX_VERSION=6.18so the sharedpkg/linux/build.shselects the 6.18 config tree.pkg/linux/6.18/{x86_64,aarch64}.config: seeded by copying from 6.1. CI's in-buildolddefconfigis canonical; if these diverge underCONFIG_WERROR=ythe resolved configs should be pulled back per the "Updating a kernel config" recipe inpkg/linux/README.md..github/workflows/build.yml: extendKERNELSto"6.1 6.18"so thereleasejob packagesopenvmm-test-linux-6.18.<arch>.<ver>.tar.gz(gh-release upload is glob-based, no further changes needed).cgmanifest.json: regenerated viapkg/Tools/gen-cgmanifest.pyto register the newgregkh/linuxpin.linux-6.18/output, artifact, and config layout.Notes
.172after linux: split test kernel into its own release artifact #62).ADDSHA in the Dockerfile andcgmanifest.json(regenerated).