kernel: move to the 6.18 LTS kernel#1130
Draft
bhouse-nexthop wants to merge 5 commits into
Draft
Conversation
This was referenced Jul 9, 2026
Draft
4cdfd9d to
9d09ffd
Compare
This was referenced Jul 9, 2026
9d09ffd to
924f456
Compare
bhouse-nexthop
added a commit
to bhouse-nexthop/onie
that referenced
this pull request
Jul 9, 2026
…nfigs) Squashed content of PR opencomputeproject#1130 (delta over opencomputeproject#1129), pulled in as a dependency. Signed-off-by: Brad House <bhouse@nexthop.ai>
924f456 to
7454987
Compare
bhouse-nexthop
added a commit
to bhouse-nexthop/onie
that referenced
this pull request
Jul 10, 2026
…nfigs) Squashed content of PR opencomputeproject#1130 (delta over opencomputeproject#1129), pulled in as a dependency. Signed-off-by: Brad House <bhouse@nexthop.ai>
bhouse-nexthop
added a commit
to bhouse-nexthop/onie
that referenced
this pull request
Jul 10, 2026
…nfigs) Squashed content of PR opencomputeproject#1130 (delta over opencomputeproject#1129), pulled in as a dependency. Signed-off-by: Brad House <bhouse@nexthop.ai>
bhouse-nexthop
added a commit
to bhouse-nexthop/onie
that referenced
this pull request
Jul 13, 2026
…nfigs) Squashed content of PR opencomputeproject#1130 (delta over opencomputeproject#1129), pulled in as a dependency. Signed-off-by: Brad House <bhouse@nexthop.ai>
Squashed baseline of PR opencomputeproject#1129, on which this PR is stacked. Drops out once PR opencomputeproject#1129 merges into onie-modernization-2026. Signed-off-by: Brad House <bhouse@nexthop.ai>
Bump the image kernel from 5.4.86 to the 6.18.35 LTS line, now that the
GCC 14 toolchain is in place (previous commit).
- kernel-download.make: LINUX_VERSION 5.4.86 -> 6.18.35.
- Non-versioned base config: LINUX_CONFIG falls back to a shared
conf/kernel/linux.<arch>.config (per-version configs under
conf/kernel/<release>/ are still preferred when a platform ships one),
so a kernel bump needs no new committed config.
- The .config recipe now runs "make olddefconfig" (via the cross
toolchain, hence the order-only XTOOLS_BUILD_STAMP dep) to reconcile
the base config to the kernel actually being built.
- Module signing: 6.18 dropped MODULE_SIG_KEY_SRCPREFIX and resolves
CONFIG_MODULE_SIG_KEY relative to the build tree, so after olddefconfig
rewrite a configured signing key to the absolute path of the generated
key (replacing the MODULE_SIG_KEY_SRCPREFIX passed on the build line).
- conf/kernel/linux.x86_64.config, conf/kernel/linux.armv8a.config,
patches/kernel/6.18.35/series, upstream/linux-6.18.35.tar.xz.sha1.
Signed-off-by: Brad House <bhouse@nexthop.ai>
123 platforms carry an empty kernel patch series, so they have no version-bound kernel code. Drop their LINUX_VERSION / LINUX_MINOR_VERSION pins and let them ride the default kernel (now 6.18 LTS) instead of an EOL line. This modernizes them and lets them build on the GCC 14 toolchain again (they need no kernel-build leniency flags, having no patches). Platforms that DO carry kernel patches keep their pin -- their patches are written against that specific kernel and would not apply to 6.18. Signed-off-by: Brad House <bhouse@nexthop.ai>
cls_ds4101 carries kernel patches (cls-lpc-basecpld, enable-kernel-spcr) but pinned no kernel version, so it floated on the default. The toolchain milestone bumped the default to 6.18 LTS, which its older patches do not apply to. Pin it to 5.4.86 -- the prior default it was already building against -- so this change is a no-op for the platform. Whether it still builds on the modern toolchain is its owner's concern; this only avoids us silently moving it off its kernel. Signed-off-by: Brad House <bhouse@nexthop.ai>
…ect configs Nine x86 platforms (the Dell C2xxx/S-series family + agema_ag7648c) each carried a kernel patch whose sole purpose was to add a platform Kconfig symbol that select()ed a fixed set of standard Intel SoC options (I2C_ISCH, I2C_ISMT, GPIO_SCH, MFD_CORE, LPC_SCH) with no driver code. Replace each with those CONFIG_* set directly in the machine kernel config and drop the patch. The aggregator was each platform's only kernel patch, so with it gone they carry no version-bound kernel code: drop their LINUX_VERSION pins too and let them ride the default kernel (6.18 LTS, which builds under GCC 14). The five options were verified to survive `make olddefconfig` against the 6.18 base config. Signed-off-by: Brad House <bhouse@nexthop.ai>
7454987 to
84e24aa
Compare
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.
Targets
onie-modernization-2026. This is the second half of the old toolchain milestone (#1119): the kernel bump, stacked on top of the toolchain PR (#1129).Depends on (merge first): #1129 (and transitively #1125/#1126/#1127/#1128). Until the toolchain PR merges into
onie-modernization-2026, this PR's diff also includes the toolchain PR's commits; I'll rebase once it lands so the diff narrows to just the kernel commits below.What this does (own commits, on top of the toolchain PR)
kernel: move to the 6.18 LTS kernel— LINUX_VERSION 5.4.86 → 6.18.35; non-versioned base config witholddefconfigreconciliation (order-only on the cross toolchain); module signing rewritten to an absolute key path (6.18 droppedMODULE_SIG_KEY_SRCPREFIX); newconf/kernel/linux.{x86_64,armv8a}.config,patches/kernel/6.18.35/.machines: drop kernel version pins on platforms with no kernel patchesmachines: pin celestica cls_ds4101 kernel to 5.4.86machines: replace Intel-SCH config-aggregator kernel patches with direct configsWhy split from the toolchain
The
KERNEL_OLD_GCC_COMPATchange in the toolchain PR builds the old 5.4 kernel under GCC 14, which breaks the old toolchain↔kernel build cycle and lets the kernel bump be reviewed/rolled back on its own.