Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .github/workflows/build-kernel-extra.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,18 @@ jobs:
git config --global user.email $email
git config --global user.name $KBUILD_BUILD_USER

- name: "Compile kernel i386_defconfig"
run: |
# .config
make i386_defconfig
make -j$(nproc)
Comment on lines +32 to +33
Copy link

Copilot AI Apr 14, 2026

Choose a reason for hiding this comment

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

This builds i386 and then later x86_64 (and other ARCH values) in the same source/output tree. Kbuild is not reliable when reusing the same output directory across different defconfigs/bitness/architectures; stale objects can lead to flaky failures or false passes. Use per-config out-of-tree build dirs (e.g., via O=/KBUILD_OUTPUT) or run a clean step (e.g., make mrproper) between architecture/bitness switches.

Copilot uses AI. Check for mistakes.

- name: "Clang build kernel i386_defconfig"
run: |
# .config
make LLVM=-18 i386_defconfig
make LLVM=-18 -j$(nproc)
Comment on lines +38 to +39
Copy link

Copilot AI Apr 14, 2026

Choose a reason for hiding this comment

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

The clang i386 build reuses the artifacts from the preceding GCC i386 build in the same directory. Even if many objects rebuild, this can still mask clang-only build issues or cause confusing incremental-build behavior. Consider using a separate O= output dir for the clang pass (or cleaning before the clang build) so it is a true from-scratch clang build for this config.

Copilot uses AI. Check for mistakes.

- name: "Compile kernel x86_64_defconfig"
run: |
# .config
Expand Down
Loading