# git rev-parse -q --verify 200a8ef398b452a9ba7e4a45b9fa1abf9b9b298f^{commit} 200a8ef398b452a9ba7e4a45b9fa1abf9b9b298f already have revision, skipping fetch # git checkout -q -f -B kisskb 200a8ef398b452a9ba7e4a45b9fa1abf9b9b298f # git clean -qxdf # < git log -1 # commit 200a8ef398b452a9ba7e4a45b9fa1abf9b9b298f # Author: Daniel Axtens # Date: Thu Feb 21 14:03:45 2019 +0000 # # powerpc: KASAN for 64bit Book3E # # Wire up KASAN. Only outline instrumentation is supported. # # The KASAN shadow area is mapped into vmemmap space: # 0x8000 0400 0000 0000 to 0x8000 0600 0000 0000. # To do this we require that vmemmap be disabled. (This is the default # in the kernel config that QorIQ provides for the machine in their # SDK anyway - they use flat memory.) # # Only the kernel linear mapping (0xc000...) is checked. The vmalloc and # ioremap areas (also in 0x800...) are all mapped to a zero page. As # with the Book3S hash series, this requires overriding the memory <-> # shadow mapping. # # Also, as with both previous 64-bit series, early instrumentation is not # supported. It would allow us to drop the kasan_arch_is_ready() # hook in the KASAN core, but it's tricky to get it set up early enough: # we need it setup before the first call to instrumented code like printk(). # Perhaps in the future. # # Only KASAN_MINIMAL works. # # Lightly tested on e6500. KVM, kexec and xmon have not been tested. # # The test_kasan module fires warnings as expected, except for the # following tests: # # - Expected/by design: # kasan test: memcg_accounted_kmem_cache allocate memcg accounted object # # - Due to only supporting KASAN_MINIMAL: # kasan test: kasan_stack_oob out-of-bounds on stack # kasan test: kasan_global_oob out-of-bounds global variable # kasan test: kasan_alloca_oob_left out-of-bounds to left on alloca # kasan test: kasan_alloca_oob_right out-of-bounds to right on alloca # kasan test: use_after_scope_test use-after-scope on int # kasan test: use_after_scope_test use-after-scope on array # # Thanks to those who have done the heavy lifting over the past several years: # - Christophe's 32 bit series: https://lists.ozlabs.org/pipermail/linuxppc-dev/2019-February/185379.html # - Aneesh's Book3S hash series: https://lwn.net/Articles/655642/ # - Balbir's Book3S radix series: https://patchwork.ozlabs.org/patch/795211/ # # Cc: Christophe Leroy # Cc: Aneesh Kumar K.V # Cc: Balbir Singh # Signed-off-by: Daniel Axtens # Signed-off-by: Christophe Leroy # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-ld --version # < git log --format=%s --max-count=1 200a8ef398b452a9ba7e4a45b9fa1abf9b9b298f # < make -s -j 48 ARCH=powerpc O=/kisskb/build/chleroy_85xx_ppa8548_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- 85xx/ppa8548_defconfig # make -s -j 48 ARCH=powerpc O=/kisskb/build/chleroy_85xx_ppa8548_defconfig_powerpc-gcc4.6 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- /kisskb/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /kisskb/src/kernel/printk/printk.c:186:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c: In function 'proc_reg_open': /kisskb/src/include/linux/list.h:65:12: warning: 'pdeo' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/fs/proc/inode.c:339:21: note: 'pdeo' was declared here /kisskb/src/drivers/base/regmap/regmap.c: In function '_regmap_raw_write': /kisskb/src/drivers/base/regmap/regmap.c:1855:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/base/regmap/regmap.c: In function 'regmap_raw_read': /kisskb/src/drivers/base/regmap/regmap.c:2594:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/i2c/i2c-core-base.c: In function 'i2c_generic_scl_recovery': /kisskb/src/drivers/i2c/i2c-core-base.c:235:5: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/tty/serial/8250/8250_core.c: In function 'univ8250_release_irq': /kisskb/src/drivers/tty/serial/8250/8250_core.c:247:18: warning: 'i' may be used uninitialized in this function [-Wuninitialized] /kisskb/src/drivers/tty/serial/8250/8250_core.c:227:19: note: 'i' was declared here INFO: Uncompressed kernel (size 0x490aac) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0x500000) Image Name: Linux-5.0.0-rc7-g200a8ef398b4 Created: Tue Feb 26 02:58:43 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 2333658 Bytes = 2278.96 KiB = 2.23 MiB Load Address: 00000000 Entry Point: 00000000 Completed OK # rm -rf /kisskb/build/chleroy_85xx_ppa8548_defconfig_powerpc-gcc4.6 # Build took: 0:00:30.478468