Skip to content
Merged
Show file tree
Hide file tree
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
6 changes: 5 additions & 1 deletion crates/gk/src/cell.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1185,7 +1185,11 @@ mod tests {
let log = dir.join("make.log");
std::fs::write(&log, " LD vmlinux.o\nmake[3]: *** [/src/scripts/Makefile.vmlinux_o:79: vmlinux.o] Error 137\nmake[2]: *** [/src/Makefile:1362: vmlinux_o] Error 2\n").unwrap();
assert!(killed(&log));
std::fs::write(&log, "make[4]: *** [/src/scripts/Makefile.build:229: fs/x.o] Error 1\n").unwrap();
std::fs::write(
&log,
"make[4]: *** [/src/scripts/Makefile.build:229: fs/x.o] Error 1\n",
)
.unwrap();
assert!(!killed(&log));
assert!(!killed(&dir.join("missing.log")));
let _ = std::fs::remove_dir_all(&dir);
Expand Down
2 changes: 1 addition & 1 deletion docs/spec/13-open-questions.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ At G1 none of the three machines this repository runs on has `/dev/kvm`, so the

**9. `CONFIG_WERROR` and arch `-Werror`.** The matrix builds with `CONFIG_WERROR=n`, but several architectures and directories have their own `-Werror` (sparc, powerpc's `PPC_WERROR`, alpha, mips, some drivers, objtool). A new warning therefore fails some platforms and not others with the same GCC. That is a real finding, and the L3w twin shows it, but it could also make tier 3 look worse than it is. Proposed: report it as is, with the class `new-warning-werror`, and never turn off an architecture's own `-Werror` (that would change the kernel, which 02.5 forbids). Settled by G4.

**10. `allmodconfig` on the Current set.** It exercises far more code than `defconfig`, and it is where most new-GCC breakages first show. It is also about ten times as expensive. Proposed: `allmodconfig` build-only on the Current set, the GCC 16 column and the newest two last points, x86_64 and arm64 only. Settled at G1, from its measured cost.
**10. `allmodconfig` on the Current set.** It exercises far more code than `defconfig`, and it is where most new-GCC breakages first show. It is also about ten times as expensive. Proposed: `allmodconfig` build-only on the Current set, the GCC 16 column and the newest two last points, x86_64 and arm64 only. Measured at G1 with 7.2.8 on x86_64 and gcc-16.2.0, on a shared 6 core machine with 11.7 GB: 26,633 compile units in 3 h 38 min, where `defconfig+gk` takes 12 to 43 min on the same machine depending on its load, so close to the ten times guessed. The build then did not finish. objtool on `vmlinux.o` grew past 3.5 GB while the machine was full, and the OOM killer stopped it. A killed build is now no verdict at all, instead of a failure charged to the GCC. Settled: `allmodconfig` stays build-only and out of the stripe. It runs on demand, on x86_64 and arm64, for the newest Current kernel and the GCC 16 column, and only on a host that has several GB free when the link starts.

**11. Clang.** The question the user asked is about GCC, and rucc aims at GCC compatibility. A clang axis would reuse everything here: host environments, the ladder, the boot rig and the catalog. Proposed: out of scope. The design keeps `flavor` open, so a `clang` flavor column could be added later without changing the model. Not scheduled.

Expand Down
Loading