# git rev-parse -q --verify acc48fec3ae30fd2c049c39582e1c4fdf25480ee^{commit} acc48fec3ae30fd2c049c39582e1c4fdf25480ee already have revision, skipping fetch # git checkout -q -f -B kisskb acc48fec3ae30fd2c049c39582e1c4fdf25480ee # git clean -qxdf # < git log -1 # commit acc48fec3ae30fd2c049c39582e1c4fdf25480ee # Author: Ravi Bangoria # Date: Thu Mar 11 14:45:38 2021 +0530 # # powerpc/uprobes: Validation for prefixed instruction # # As per ISA 3.1, prefixed instruction should not cross 64-byte # boundary. So don't allow Uprobe on such prefixed instruction. # # There are two ways probed instruction is changed in mapped pages. # First, when Uprobe is activated, it searches for all the relevant # pages and replace instruction in them. In this case, if that probe # is on the 64-byte unaligned prefixed instruction, error out # directly. Second, when Uprobe is already active and user maps a # relevant page via mmap(), instruction is replaced via mmap() code # path. But because Uprobe is invalid, entire mmap() operation can # not be stopped. In this case just print an error and continue. # # Signed-off-by: Ravi Bangoria # Acked-by: Naveen N. Rao # Acked-by: Sandipan Das # Signed-off-by: Michael Ellerman # Link: https://lore.kernel.org/r/20210311091538.368590-1-ravi.bangoria@linux.ibm.com # < /opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 acc48fec3ae30fd2c049c39582e1c4fdf25480ee # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux- randconfig KCONFIG_SEED=0x850B0390 # Added to kconfig CONFIG_STANDALONE=y # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_CPU_BIG_ENDIAN=y # Added to kconfig CONFIG_PPC64=y # Added to kconfig CONFIG_PPC_DISABLE_WERROR=y # Added to kconfig CONFIG_SECTION_MISMATCH_WARN_ONLY=y # Added to kconfig CONFIG_PREVENT_FIRMWARE_BUILD=y # Added to kconfig CONFIG_CC_STACKPROTECTOR_STRONG=n # Added to kconfig CONFIG_GCC_PLUGINS=n # Added to kconfig CONFIG_LD_HEAD_STUB_CATCH=y # Added to kconfig CONFIG_TRIM_UNUSED_KSYMS=n # Added to kconfig CONFIG_UBSAN=n # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux- help # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux- olddefconfig .config:3157:warning: override: reassigning to symbol STANDALONE .config:3167:warning: override: reassigning to symbol LD_HEAD_STUB_CATCH .config:3169:warning: override: reassigning to symbol UBSAN # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-9.2.0-nolibc/powerpc64-linux/bin/powerpc64-linux- WARNING: 4 bad relocations c00000000002f782 R_PPC64_ADDR16_HIGHEST .head.text+0x000000000002f79c c00000000002f786 R_PPC64_ADDR16_HIGH .head.text+0x000000000002f79c c00000000002f78a R_PPC64_ADDR16_HIGHER .head.text+0x000000000002f79c c00000000002f78e R_PPC64_ADDR16_LO .head.text+0x000000000002f79c Completed OK # rm -rf /kisskb/build/powerpc-next-rand_powerpc-randconfig_powerpc-gcc9 # Build took: 0:03:39.892840