Skip to content

feat(kernel): bump to 6.18.39.1, enable TCP BBR3, add kernel update skill - #18528

Draft
Rachel Menge (rlmenge) wants to merge 3 commits into
4.0from
rlmenge/4.0/kernel-skills
Draft

feat(kernel): bump to 6.18.39.1, enable TCP BBR3, add kernel update skill#18528
Rachel Menge (rlmenge) wants to merge 3 commits into
4.0from
rlmenge/4.0/kernel-skills

Conversation

@rlmenge

Copy link
Copy Markdown
Contributor

Bumps the Azure Linux kernel and kernel-headers to 6.18.39.1, enables TCP BBR3 as a module (CONFIG_TCP_CONG_BBR3=m on x86_64 + aarch64) and records it in the required-configs manifest as this was added in the source upgrade, and adds a kernel-update skill plus a slimmed README.rst that documents the current update workflow.

Commits

  • feat(kernel): update kernel and kernel-headers to 6.18.39.1
  • feat(kernel): enable TCP BBR3 as a module
  • docs(kernel): add kernel update skill and maintenance guide

Introduce a kernel-update agent skill that captures the full workflow
for source-version bumps, same-version rebuilds, lock refreshes, render
review, build, and mock validation, and wire it into AGENTS.md so it is
discoverable alongside the other azldev skills.

Rewrite base/comps/kernel/README.rst to describe the local-spec fork
point from Fedora dist-git, the version/release macro scheme, the
kernel configuration policy, and the editable inputs (including
base/comps/kernel/sources for replace-upstream matching). The README
now defers to the skill as the authoritative checklist so procedural
details live in one place.

Guardrails covered by the skill:

* update base/comps/kernel/sources alongside kernel.comp.toml when
  the source version changes; a stale manifest either keeps both
  archives or fails render with 'no entry with that filename exists'.
* only source-version bumps require a coordinated kernel-headers
  update; same-version rebuilds (config, patch, azl_pkgrelease bump)
  must not rebump or rebuild kernel-headers.
* never describe mock-chroot checks as kernel runtime tests.

Signed-off-by: Rachel Menge <rachelmenge@microsoft.com>
Copilot AI balanced review requested due to automatic review settings August 19, 2026 23:27
@rlmenge Rachel Menge (rlmenge) changed the title Kernel: bump to 6.18.39.1, enable TCP BBR3, add kernel update skill feat(kernel): bump to 6.18.39.1, enable TCP BBR3, add kernel update skill Aug 19, 2026
@rlmenge

Copy link
Copy Markdown
Contributor Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
2 pipeline(s) were filtered out due to trigger conditions.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates kernel and kernel-headers to 6.18.39.1, enables modular TCP BBR3, and documents the maintenance workflow.

Changes:

  • Updates kernel sources, versions, configurations, locks, and rendered outputs.
  • Enables BBR3 on x86_64 and arm64.
  • Adds kernel maintenance documentation and an agent skill.

Reviewed changes

Copilot reviewed 20 out of 22 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
specs/k/kernel/sources Updates rendered kernel source checksum.
specs/k/kernel/README.rst Renders the maintenance guide.
specs/k/kernel/kernel.spec Renders version, release, and changelog updates.
specs/k/kernel/6.18-x86_64-azl.config Renders x86_64 BBR3 configuration.
specs/k/kernel/6.18-aarch64-azl.config Renders arm64 configuration updates.
specs/k/kernel-headers/sources Updates rendered headers source checksum.
specs/k/kernel-headers/kernel-headers.spec Renders headers version and static changelog.
scripts/ci/kernel/kernel-config-checker/kernel_config_checker/kernel_configs_json/azl4-os-required-kernel-configs.json Requires modular BBR3 on both architectures.
locks/kernel.lock Refreshes the kernel input fingerprint.
locks/kernel-headers.lock Refreshes the headers input fingerprint.
base/comps/kernel/sources Pins the new kernel archive.
base/comps/kernel/README.rst Documents kernel maintenance.
base/comps/kernel/kernel.spec Updates kernel version, release, and changelog.
base/comps/kernel/kernel.comp.toml Pins the 6.18.39.1 source.
base/comps/kernel/6.18-x86_64-azl.config Enables BBR3 on x86_64.
base/comps/kernel/6.18-aarch64-azl.config Enables BBR3 and new arm64 options.
base/comps/kernel-headers/overlays/0006-static-changelog.overlay.toml Introduces a curated static changelog.
base/comps/kernel-headers/overlays/0004-use-azl-kernel-tarball-source.overlay.toml Updates source descriptions.
base/comps/kernel-headers/overlays/0001-set-specversion-3-part.overlay.toml Updates three-part version replacements.
base/comps/kernel-headers/kernel-headers.comp.toml Pins matching headers inputs.
AGENTS.md Registers the kernel-update skill.
.agents/skills/kernel-update/SKILL.md Adds the kernel update workflow.

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +18 to +22
replacement = """* Wed Aug 19 2026 Rachel Menge <rachelmenge@microsoft.com> - 6.18.39-1
- feat(kernel): update kernel and kernel-headers to 6.18.39.1

* Mon May 18 2026 Rachel Menge <rachelmenge@microsoft.com> - 6.18.31-1
- feat(kernel): update kernel and kernel-headers to 6.18.31.1
Comment on lines +71 to +73
7. In `base/comps/kernel-headers/overlays/0001-set-specversion-3-part.overlay.toml`,
set both the `specversion` and `tarfile_release` replacements to the same
three-part `specrpmversion` used by `kernel.spec`.
Comment on lines +16 to +17
The kernel source comes from the ``rolling-lts/azl4`` branch of the
`Azure Linux kernel repository`_. ``kernel.comp.toml`` pins the source archive,
Comment on lines +16 to +19
Before acting, read the repository's `AGENTS.md` plus the `azldev`,
`azldev-build-component`, `azldev-mock`, and
`azldev-update-component` skills. Read `azldev-comp-toml` before changing
`kernel.comp.toml`.
Comment on lines +34 to +36
3. Confirm the requested four-part version exists on the
`rolling-lts/azl4` source branch. Treat a major or minor series change as a
major version update and obtain explicit user approval.
[[overlays]]
type = "spec-search-replace"
description = "Replace %autochangelog with a static AZL changelog so renders don't include rpmautospec placeholders or unrelated Fedora dist-git history"
regex = "%autochangelog"
Comment on lines +3 to +7
# expands %autochangelog at render time by walking git history; because
# the render runs against a staged (non-git) overlay tree, it produces an
# "Unknown User / Uncommitted changes" placeholder plus the pinned Fedora
# dist-git history rather than an AZL-relevant log. A static block gives
# deterministic, meaningful changelog output regardless of the render env.
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.

2 participants