Buildresult: kbuild/arm64-defconfig/arm64-gcc13 built on Jul 17, 18:53
kisskb
Revisions
|
Branches
|
Compilers
|
Configs
|
Build Results
|
Build Failures
|
Status:
OK
Date/Time:
Jul 17, 18:53
Duration:
0:06:47.653237
Builder:
alpine2
Revision:
kconfig: recursive checks drop file/lineno (
0afaf52eff136daf4edc2aac3dc9793fa247ed0c)
Target:
kbuild/arm64-defconfig/arm64-gcc13
Branch:
kbuild
Compiler:
arm64-gcc13
(aarch64-linux-gcc (GCC) 13.1.0 / GNU ld (GNU Binutils) 2.40)
Config:
defconfig
(
download
)
Log:
Download original
Possible warnings (1)
remote: warning: multi-pack bitmap is missing required reverse index
Full Log
# git rev-parse -q --verify 0afaf52eff136daf4edc2aac3dc9793fa247ed0c^{commit} # git fetch -q -n -f git://gitlab.ozlabs.ibm.com/mirror/linux-kbuild.git for-next remote: warning: multi-pack bitmap is missing required reverse index # git rev-parse -q --verify 0afaf52eff136daf4edc2aac3dc9793fa247ed0c^{commit} 0afaf52eff136daf4edc2aac3dc9793fa247ed0c # git checkout -q -f -B kisskb 0afaf52eff136daf4edc2aac3dc9793fa247ed0c # git clean -qxdf # < git log -1 # commit 0afaf52eff136daf4edc2aac3dc9793fa247ed0c # Author: HONG Yifan <elsk@google.com> # Date: Wed Jul 17 01:50:41 2024 +0000 # # kconfig: recursive checks drop file/lineno # # This prevents segfault when getting filename and lineno in recursive # checks. # # If the following snippet is found in Kconfig: # # [Test code 1] # # config FOO # bool # depends on BAR # select BAR # # ... without BAR defined; then there is a segfault. # # Kconfig:34:error: recursive dependency detected! # Kconfig:34: symbol FOO depends on BAR # make[4]: *** [scripts/kconfig/Makefile:85: allnoconfig] Segmentation fault # # This is because of the following. BAR is a fake entry created by # sym_lookup() with prop being NULL. In the recursive check, there is a # NULL check for prop to fall back to stack->sym->prop if stack->prop is # NULL. However, in this case, stack->sym points to the fake BAR entry # created by sym_lookup(), so prop is still NULL. prop was then referenced # without additional NULL checks, causing segfault. # # As the previous email thread suggests, the file and lineno for select is # also wrong: # # [Test code 2] # # config FOO # bool # # config BAR # bool # # config FOO # bool "FOO" # depends on BAR # select BAR # # $ make defconfig # *** Default configuration is based on 'x86_64_defconfig' # Kconfig:1:error: recursive dependency detected! # Kconfig:1: symbol FOO depends on BAR # Kconfig:4: symbol BAR is selected by FOO # [...] # # Kconfig:4 should be Kconfig:10. # # This patch deletes the wrong and segfault-prone filename/lineno # inference completely. With this patch, Test code 1 yields: # # error: recursive dependency detected! # symbol FOO depends on BAR # symbol BAR is selected by FOO # # Signed-off-by: HONG Yifan <elsk@google.com> # Signed-off-by: Masahiro Yamada <masahiroy@kernel.org> # < /opt/cross/kisskb/korg/gcc-13.1.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-13.1.0-nolibc/aarch64-linux/bin/aarch64-linux-ld --version # < git log --format=%s --max-count=1 0afaf52eff136daf4edc2aac3dc9793fa247ed0c # make -s -j 160 ARCH=arm64 O=/kisskb/build/kbuild_defconfig_arm64-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/aarch64-linux/bin/aarch64-linux- defconfig # < make -s -j 160 ARCH=arm64 O=/kisskb/build/kbuild_defconfig_arm64-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/aarch64-linux/bin/aarch64-linux- help # make -s -j 160 ARCH=arm64 O=/kisskb/build/kbuild_defconfig_arm64-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/aarch64-linux/bin/aarch64-linux- olddefconfig # make -s -j 160 ARCH=arm64 O=/kisskb/build/kbuild_defconfig_arm64-gcc13 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-13.1.0-nolibc/aarch64-linux/bin/aarch64-linux- Completed OK # rm -rf /kisskb/build/kbuild_defconfig_arm64-gcc13 # Build took: 0:06:47.653237
© Michael Ellerman 2006-2018.