FOS: update Linux kernel to 6.18.38 LTS (needs testing)#114
Open
mastacontrola wants to merge 3 commits into
Open
FOS: update Linux kernel to 6.18.38 LTS (needs testing)#114mastacontrola wants to merge 3 commits into
mastacontrola wants to merge 3 commits into
Conversation
On Arrow Lake desktop (Core Ultra 200S) systems with VMD enabled, NVMe drives routed through the PCH live on a second VMD rootbus hardwired to bus 0x80. The mainline vmd driver only enumerates the first rootbus, so FOS never sees the disk and imaging fails. Intel's upstream fix (v5, 2026-06-25) is not yet merged in any mainline/stable kernel, so a kernel version bump cannot fix this yet. Ubuntu ships the same fix as SAUCE patches in linux-oem-6.11 (Launchpad #2085853), where it is confirmed working on affected hardware. This adds those four patches (0c9ff92b2efc, d20355bdd463, e7b7195e3706, 040d304c75b9) combined and adapted to vanilla 6.12.35 as patch/kernel/linux.patch, which build.sh already applies to all kernel builds. The patched vmd.c was diffed against Ubuntu's final tree to confirm only known base-version differences remain, and the patch was verified to apply cleanly the same way build.sh does. Harmless for arm64/x86 builds: the file patches identically and CONFIG_VMD is only enabled on x64. Fixes #107 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Rebase from 6.12.35 to the current 6.18 LTS line (supported until Dec 2028). 6.18 carries complete Arrow Lake / Lunar Lake enablement (intel_idle C-state handling, Wi-Fi, GPU stubs) that shipped after 6.12, and is the suspected fix line for the Dell Pro Max 16 MC16250 hang tracked in #108. Changes: - build.sh: KERNEL_VERSION 6.12.35 -> 6.18.38 - configs/kernel{x64,arm64,x86}.config: regenerated with `make olddefconfig` against 6.18.38 with KernelPackages vendor drivers appended (same layout build.sh produces). All NIC, storage, and boot options verified preserved; dropped symbols are upstream removals/renames only (EXT3_FS alias removed - ext4 still mounts ext3; KEYBOARD_ADP5589/TCA6416 removed upstream; rest are internal kconfig symbols). - configs/fs{x64,arm64,x86}.config: kernel headers 6.12.35 -> 6.18.38, regenerated with Buildroot 2026.02.1 olddefconfig with the FOS package overlay applied (FOG/partclone/chntpw/testdisk/ cabextract/partimage selections preserved). The VMD PCH-rootbus patch (#113) applies to 6.18.38 unmodified (offsets only, no fuzz) - the upstream series is still unmerged as of mainline 7.2-rc1 - and vmd.o compiles clean against 6.18. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The fs configs carry a legacy BR2_KERNEL_MIRROR of http://www.kernel.org/pub/ (Buildroot's default has been https://cdn.kernel.org/pub for years). The www.kernel.org frontend is timing out today, which broke the linux-headers 6.18.38 download in CI run 28741856230 for all three init builds: wget gives up after 2 tries, and the sources.buildroot.net fallback 404s because it only mirrors the kernel versions pinned in Buildroot's own hash files. cdn.kernel.org serves the tarball fine. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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
Rebases FOS from kernel 6.12.35 to 6.18.38, the current LTS line (maintained until ~Dec 2028). 6.12 is now two LTS cycles behind, and the newest hardware in our issue queue (Arrow Lake Dell Pro Max machines in #108) only got full enablement after 6.12. Rod's EXPERIMENTAL_Kernel_6_17 build already proved a newer kernel fixes the Dell Pro Max 16 MC16250 hang (ThePawlow's confirmation on #108) — this PR makes that fix line official and puts us on an LTS base instead of a short-lived 6.17.
Builds on #113 (branch is based on
vmd-pch-rootbus, so its commit appears here; merge #113 first and this reduces to one commit).What changed
build.sh:KERNEL_VERSION6.12.35 → 6.18.38. Nothing else — the kernel.org URL derivation, patch application, and KernelPackages merge all work unchanged.configs/kernel{x64,arm64,x86}.config: regenerated viamake olddefconfigagainst 6.18.38 with the KernelPackages vendor drivers append-merged first (replicating exactly whatbuildKernelproduces), so the vendor R8125/R8126/R8127/R8168 symbols were resolved during regeneration, not bolted on after.configs/fs{x64,arm64,x86}.config: kernel-headers selection 6.12 → 6.18, regenerated with Buildroot 2026.02.1olddefconfigwith the FOS overlay applied (fs.patch + newConf.in + Buildroot/ rsync), so the FOG/partclone/chntpw/testdisk/cabextract/partimage package selections survived. The resulting diff is purely the header-version cascade (~20 lines per file).Verification done
vmd.ocompiles. I also checked mainline 7.2-rc1: Szymon Durawa's upstream second-rootbus series is still unmerged, so we keep carrying the patch.-Wunused-functionwarnings). This was the biggest rebase risk since r8125 9.016.01 predates 6.18.extract-ikconfigverified:R8125/R8126/R8127/R8168=y,# CONFIG_R8169 is not set,NET_VENDOR_REALTEK/8139CP/8139TOO=y,VMD=y,E1000E/IGB/IGC/BNX2=y,CONFIG_EXTRA_FIRMWAREintact — same driver layout as the shipping 6.12.35 kernel.EXT3_FSalias removed upstream — ext4 mounts ext3 natively;EXT2_FS=yretained.KEYBOARD_ADP5589/KEYBOARD_TCA6416drivers deleted from the kernel entirely (I2C keyboard expanders, irrelevant to FOS).ICE=yretained (ICE_HWTSsub-symbol folded in upstream).What needs testing
EFI stuboutput at all) where 6.12.35 worked. Unknown whether 6.18.38 has the same issue; this is the top validation target.A test bzImage built from this branch is attached to the EXPERIMENTAL issue-108 prerelease for #108 reporters (Arrow Lake signature) to try.
Noticed but deliberately not changed
KernelPackages/drivers/net/ethernet/realtek/Makefilehasobj-$(CONFIG_R8126) += r8127/— r8127 is gated on the R8126 symbol (copy-paste from the r8126 line). Harmless today since both are=y, but worth fixing separately so r8127 doesn't silently vanish if R8126 is ever disabled.🤖 Generated with Claude Code