[SRU][focal/linux-riscv-5.8][PATCH 0/1] gcc version used for kernel configs doesn't match the one used for builds

Kleber Sacilotto de Souza kleber.souza at canonical.com
Mon Jun 28 16:31:24 UTC 2021

BugLink: https://bugs.launchpad.net/bugs/1933856

linux-riscv-5.8 needs to be built with gcc-10 in Focal otherwise it won't boot.
This was fixed by commit "UBUNTU: [Packaging] Use gcc-10 for riscv 5.8 kernel
build", which adds gcc-10 as "Build-Depends-Arch" and sets a variable "gcc" in
'debian/rules', which is passed down to make by

The other gcc version dependency is when we generate locally the kernel configs
by running 'make syncconfig', which is called by
'debian/scripts/misc/kernelconfig'. Currently, the syncconfig is called using
the chroot default compiler, which in Focal is gcc-9. So far there hasn't been
any major differences, however with the update of gcc-10 in Groovy and Focal
from 10.2.0 to 10.3.0 some KASAN related config options are not available
anymore, causing some changes on the configs generated. The problem with
non-matching gcc versions being used, is that there will be a mismatch between
the configs being generated during the preparation of the kernel and the ones
during the build.

The proposed fix is to use the same variable defined for the build, passing it
down to 'debian/scripts/misc/kernelconfig' and using it to define the correct
cross-compiler to be used.

[Where problems could occur]
If the environment variables are not set correctly the build can break in some
environment which was not tested.

Kleber Sacilotto de Souza (1):
  UBUNTU: [Packaging] Use gcc-10 for riscv-5.8 kernel configs

 debian/rules.d/1-maintainer.mk   | 4 ++--
 debian/scripts/misc/kernelconfig | 7 ++++---
 2 files changed, 6 insertions(+), 5 deletions(-)


More information about the kernel-team mailing list