[WIP] [Deepin-Kernel-SIG] [linux 6.6-y] [RFC] deepin: extra ci: add i386_defconfig#1623
[WIP] [Deepin-Kernel-SIG] [linux 6.6-y] [RFC] deepin: extra ci: add i386_defconfig#1623Avenger-285714 wants to merge 1 commit intodeepin-community:linux-6.6.yfrom
Conversation
1. It seems our peers also check for build success under this configuration. 2. At this moment, the code in the deepin linux-6.6.y branch indeed fails to build under that branch. Signed-off-by: WangYuli <wangyl5933@chinaunicom.cn>
Reviewer's guide (collapsed on small PRs)Reviewer's GuideThis PR extends the extra kernel CI workflow to build the deepin 6.6.y kernel with the i386_defconfig using both GCC and Clang, mirroring existing x86_64_defconfig coverage and exposing current build failures under this config. Flow diagram for new i386_defconfig build steps in CIflowchart TD
A["Start build_kernel_extra job"] --> B["Configure git user"]
B --> C["Compile kernel i386_defconfig using GCC\nmake i386_defconfig && make -j$(nproc)"]
C --> D["Compile kernel i386_defconfig using Clang\nmake LLVM=-18 i386_defconfig && make LLVM=-18 -j$(nproc)"]
D --> E["Compile kernel x86_64_defconfig using GCC"]
E --> F["End job"]
File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
There was a problem hiding this comment.
Pull request overview
Adds extra CI coverage to validate that the Deepin 6.6-y kernel tree builds under i386_defconfig, aligning with peer CI expectations and helping surface existing 32-bit build regressions earlier.
Changes:
- Add a GCC build step for
i386_defconfigin the “build kernel extra” workflow. - Add a Clang build step for
i386_defconfigin the same workflow.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| make i386_defconfig | ||
| make -j$(nproc) |
There was a problem hiding this comment.
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.
| make LLVM=-18 i386_defconfig | ||
| make LLVM=-18 -j$(nproc) |
There was a problem hiding this comment.
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.
It seems our peers also check for build success under this configuration.
At this moment, the code in the deepin linux-6.6.y branch indeed fails to build under that branch.
Summary by Sourcery
CI: