# git rev-parse -q --verify fe76fc6aaf538df27708ffa3e5d549a6c8e16142^{commit} fe76fc6aaf538df27708ffa3e5d549a6c8e16142 already have revision, skipping fetch # git checkout -q -f -B kisskb fe76fc6aaf538df27708ffa3e5d549a6c8e16142 # git clean -qxdf # < git log -1 # commit fe76fc6aaf538df27708ffa3e5d549a6c8e16142 # Author: Ming Lei # Date: Tue Jan 15 11:59:52 2019 +0800 # # sbitmap: Protect swap_lock from hardirq # # Because we may call blk_mq_get_driver_tag() directly from # blk_mq_dispatch_rq_list() without holding any lock, then HARDIRQ may # come and the above DEADLOCK is triggered. # # Commit ab53dcfb3e7b ("sbitmap: Protect swap_lock from hardirq") tries to # fix this issue by using 'spin_lock_bh', which isn't enough because we # complete request from hardirq context direclty in case of multiqueue. # # Cc: Clark Williams # Fixes: ab53dcfb3e7b ("sbitmap: Protect swap_lock from hardirq") # Cc: Jens Axboe # Cc: Ming Lei # Cc: Guenter Roeck # Cc: Steven Rostedt (VMware) # Signed-off-by: Ming Lei # Signed-off-by: Linus Torvalds # < /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 fe76fc6aaf538df27708ffa3e5d549a6c8e16142 # < make -s -j 80 ARCH=powerpc O=/kisskb/build/linus-rand_randconfig+ppc64le_ppc64le-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- randconfig KCONFIG_SEED=0x88800F5E # 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=n # Added to kconfig CONFIG_CPU_LITTLE_ENDIAN=y # Added to kconfig CONFIG_PPC64=y # Added to kconfig CONFIG_PPC_BOOK3E_64=n # Added to kconfig CONFIG_PPC_BOOK3S_64=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_LD_HEAD_STUB_CATCH=y # yes \n | make -s -j 80 ARCH=powerpc O=/kisskb/build/linus-rand_randconfig+ppc64le_ppc64le-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- oldconfig yes: standard output: Broken pipe # make -s -j 80 ARCH=powerpc O=/kisskb/build/linus-rand_randconfig+ppc64le_ppc64le-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/arch/powerpc/kernel/eeh.c:1752:12: warning: 'proc_eeh_show' defined but not used [-Wunused-function] static int proc_eeh_show(struct seq_file *m, void *v) ^ WARNING: vmlinux.o(.text+0x2f44): Section mismatch in reference from the variable start_here_multiplatform to the function .init.text:early_setup() The function start_here_multiplatform() references the function __init early_setup(). This is often because start_here_multiplatform lacks a __init annotation or the annotation of early_setup is wrong. WARNING: vmlinux.o(.text+0x2f78): Section mismatch in reference from the variable start_here_common to the function .init.text:start_kernel() The function start_here_common() references the function __init start_kernel(). This is often because start_here_common lacks a __init annotation or the annotation of start_kernel is wrong. Completed OK # rm -rf /kisskb/build/linus-rand_randconfig+ppc64le_ppc64le-gcc5 # Build took: 0:02:53.656053