# git rev-parse -q --verify 83e367f9ad18d42a1883ee29f20608a2b93e1071^{commit} 83e367f9ad18d42a1883ee29f20608a2b93e1071 already have revision, skipping fetch # git checkout -q -f -B kisskb 83e367f9ad18d42a1883ee29f20608a2b93e1071 # git clean -qxdf # < git log -1 # commit 83e367f9ad18d42a1883ee29f20608a2b93e1071 # Author: Breno Leitao # Date: Thu Jan 17 15:01:54 2019 -0200 # # selftests/powerpc: Add a signal fuzzer selftest # # This is a new selftest that raises SIGUSR1 signals and handles it in a # set of different ways, trying to create different scenario for testing # purpose. # # This test works raising a signal and calling sigreturn interleaved # with TM operations, as starting, suspending and terminating a # transaction. The test depends on random numbers, and, based on them, # it sets different TM states. # # Other than that, the test fills out the user context struct that is # passed to the sigreturn system call with random data, in order to make # sure that the signal handler syscall can handle different and invalid # states properly. # # This selftest has command line parameters to control what kind of # tests the user wants to run, as for example, if a transaction should # be started prior to signal being raised, or, after the signal being # raised and before the sigreturn. If no parameter is given, the default # is enabling all options. # # This test does not check if the user context is being read and set # properly by the kernel. Its purpose, at this time, is basically # guaranteeing that the kernel does not crash on invalid scenarios. # # Signed-off-by: Breno Leitao # Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-ld --version # < git log --format=%s --max-count=1 83e367f9ad18d42a1883ee29f20608a2b93e1071 # < make -s -j 8 ARCH=powerpc O=/kisskb/build/powerpc-next_83xx_mpc837x_mds_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- 83xx/mpc837x_mds_defconfig # make -s -j 8 ARCH=powerpc O=/kisskb/build/powerpc-next_83xx_mpc837x_mds_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- :1478:2: warning: #warning syscall pidfd_send_signal not implemented [-Wcpp] :1481:2: warning: #warning syscall io_uring_setup not implemented [-Wcpp] :1484:2: warning: #warning syscall io_uring_enter not implemented [-Wcpp] :1487:2: warning: #warning syscall io_uring_register not implemented [-Wcpp] /kisskb/src/kernel/futex.c: In function 'do_futex': /kisskb/src/kernel/futex.c:1658:17: warning: 'oldval' may be used uninitialized in this function [-Wmaybe-uninitialized] return oldval == cmparg; ^ /kisskb/src/kernel/futex.c:1633:6: note: 'oldval' was declared here int oldval, ret; ^ WARNING: vmlinux.o(.text+0x120b8): Section mismatch in reference from the function setup_kup() to the function .init.text:setup_kuep() The function setup_kup() references the function __init setup_kuep(). This is often because setup_kup lacks a __init annotation or the annotation of setup_kuep is wrong. WARNING: vmlinux.o(.text+0x120d0): Section mismatch in reference from the function setup_kup() to the function .init.text:setup_kuap() The function setup_kup() references the function __init setup_kuap(). This is often because setup_kup lacks a __init annotation or the annotation of setup_kuap is wrong. INFO: Uncompressed kernel (size 0x5863b0) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0x600000) Image Name: Linux-5.1.0-rc3-g83e367f9ad18 Created: Fri May 3 12:34:38 2019 Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 2847025 Bytes = 2780.30 KiB = 2.72 MiB Load Address: 00000000 Entry Point: 00000000 Completed OK # rm -rf /kisskb/build/powerpc-next_83xx_mpc837x_mds_defconfig_powerpc-gcc5 # Build took: 0:01:13.232815