# git rev-parse -q --verify 92edf8df0ff2ae86cc632eeca0e651fd8431d40d^{commit} 92edf8df0ff2ae86cc632eeca0e651fd8431d40d already have revision, skipping fetch # git checkout -q -f -B kisskb 92edf8df0ff2ae86cc632eeca0e651fd8431d40d # git clean -qxdf # < git log -1 # commit 92edf8df0ff2ae86cc632eeca0e651fd8431d40d # Author: Michael Ellerman # Date: Thu Mar 21 15:24:33 2019 +1100 # # powerpc/security: Fix spectre_v2 reporting # # When I updated the spectre_v2 reporting to handle software count cache # flush I got the logic wrong when there's no software count cache # enabled at all. # # The result is that on systems with the software count cache flush # disabled we print: # # Mitigation: Indirect branch cache disabled, Software count cache flush # # Which correctly indicates that the count cache is disabled, but # incorrectly says the software count cache flush is enabled. # # The root of the problem is that we are trying to handle all # combinations of options. But we know now that we only expect to see # the software count cache flush enabled if the other options are false. # # So split the two cases, which simplifies the logic and fixes the bug. # We were also missing a space before "(hardware accelerated)". # # The result is we see one of: # # Mitigation: Indirect branch serialisation (kernel only) # Mitigation: Indirect branch cache disabled # Mitigation: Software count cache flush # Mitigation: Software count cache flush (hardware accelerated) # # Fixes: ee13cb249fab ("powerpc/64s: Add support for software count cache flush") # Cc: stable@vger.kernel.org # v4.19+ # Signed-off-by: Michael Ellerman # Reviewed-by: Michael Neuling # Reviewed-by: Diana Craciun # 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 92edf8df0ff2ae86cc632eeca0e651fd8431d40d # < make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-fixes_40x_obs600_defconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- 40x/obs600_defconfig # make -s -j 48 ARCH=powerpc O=/kisskb/build/powerpc-fixes_40x_obs600_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/arch/powerpc/kernel/head_40x.S: Assembler messages: /kisskb/src/arch/powerpc/kernel/head_40x.S:883: Warning: invalid register expression /kisskb/src/net/sunrpc/xprtsock.c: In function 'xs_stream_data_receive_workfn': /kisskb/src/net/sunrpc/xprtsock.c:498:15: warning: 'read' may be used uninitialized in this function [-Wmaybe-uninitialized] size_t want, read; ^ /kisskb/src/net/sunrpc/xprtsock.c:529:9: warning: 'ret' may be used uninitialized in this function [-Wmaybe-uninitialized] return ret < 0 ? ret : read; ^ /kisskb/src/net/sunrpc/xprtsock.c:499:10: note: 'ret' was declared here ssize_t ret; ^ In file included from /kisskb/src/include/linux/printk.h:7:0, from /kisskb/src/include/linux/kernel.h:15, from /kisskb/src/include/linux/fs_context.h:15, from /kisskb/src/fs/fs_parser.c:13: /kisskb/src/fs/fs_parser.c: In function 'fs_validate_description': /kisskb/src/include/linux/kern_levels.h:5:18: warning: format '%lu' expects argument of type 'long unsigned int', but argument 3 has type 'int' [-Wformat=] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^ /kisskb/src/include/linux/kern_levels.h:11:18: note: in expansion of macro 'KERN_SOH' #define KERN_ERR KERN_SOH "3" /* error conditions */ ^ /kisskb/src/include/linux/printk.h:302:9: note: in expansion of macro 'KERN_ERR' printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) ^ /kisskb/src/fs/fs_parser.c:413:6: note: in expansion of macro 'pr_err' pr_err("VALIDATE %s: e[%lu] enum val for %s\n", ^ INFO: Uncompressed kernel (size 0x4bdb24) overlaps the address of the wrapper(0x400000) INFO: Fixing the link_address of wrapper to (0x500000) Image Name: Linux-5.1.0-rc1-g92edf8df0ff2 Created: Fri Mar 22 01:09:15 2019 Image Type: PowerPC Linux Multi-File Image (gzip compressed) Data Size: 2440310 Bytes = 2383.12 KiB = 2.33 MiB Load Address: 00000000 Entry Point: 00000000 Contents: Image 0: 2433424 Bytes = 2376.39 KiB = 2.32 MiB Image 1: 3 Bytes = 0.00 KiB = 0.00 MiB Image 2: 6866 Bytes = 6.71 KiB = 0.01 MiB Completed OK # rm -rf /kisskb/build/powerpc-fixes_40x_obs600_defconfig_powerpc-gcc5 # Build took: 0:00:34.336879