# git rev-parse -q --verify ff69279a44e9ba876466b7d3ab84d6dbd31cac92^{commit} ff69279a44e9ba876466b7d3ab84d6dbd31cac92 already have revision, skipping fetch # git checkout -q -f -B kisskb ff69279a44e9ba876466b7d3ab84d6dbd31cac92 # git clean -qxdf # < git log -1 # commit ff69279a44e9ba876466b7d3ab84d6dbd31cac92 # Author: Ard Biesheuvel # Date: Wed Aug 29 08:47:53 2018 +0200 # # powerpc: disable support for relative ksymtab references # # The newly added code that emits ksymtab entries as pairs of 32-bit # relative references interacts poorly with the way powerpc lays out its # address space: when a module exports a per-CPU variable, the primary # module region covering the ksymtab entry -and thus the 32-bit relative # reference- is too far away from the actual per-CPU variable's base # address (to which the per-CPU offsets are applied to obtain the # respective address of each CPU's copy), resulting in corruption when the # module loader attempts to resolve symbol references of modules that are # loaded on top and link to the exported per-CPU symbol. # # So let's disable this feature on powerpc. Even though it implements # CONFIG_RELOCATABLE, it does not implement CONFIG_RANDOMIZE_BASE and so # KASLR kernels (which are the main target of the feature) do not exist on # powerpc anyway. # # Reported-by: Andreas Schwab # Suggested-by: Nicholas Piggin # Signed-off-by: Ard Biesheuvel # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux-gcc --version # < git log --format=%s --max-count=1 ff69279a44e9ba876466b7d3ab84d6dbd31cac92 # < make -s -j 10 ARCH=nds32 O=/kisskb/build/linus_nds32-defconfig_nds32le CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux- defconfig # make -s -j 10 ARCH=nds32 O=/kisskb/build/linus_nds32-defconfig_nds32le CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux- /kisskb/src/fs/ext4/super.c: In function '__save_error_info.isra.5': /kisskb/src/fs/ext4/super.c:344:2: warning: 'strncpy' specified bound 32 equals destination size [-Wstringop-truncation] strncpy(es->s_last_error_func, func, sizeof(es->s_last_error_func)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /kisskb/src/fs/ext4/super.c:349:3: warning: 'strncpy' specified bound 32 equals destination size [-Wstringop-truncation] strncpy(es->s_first_error_func, func, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ sizeof(es->s_first_error_func)); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /kisskb/src/scripts/unifdef.c: In function 'Mpass': /kisskb/src/scripts/unifdef.c:453:28: warning: 'strncpy' output truncated before terminating nul copying 4 bytes from a string of the same length [-Wstringop-truncation] static void Mpass (void) { strncpy(keyword, "if ", 4); Pelif(); } ^~~~~~~~~~~~~~~~~~~~~~~~~~~ Completed OK # rm -rf /kisskb/build/linus_nds32-defconfig_nds32le # Build took: 0:01:17.632123