[ima] 529aa19519: BUG: spinlock bad magic on CPU#1, swapper/0/1
FYI, we noticed the following commit: https://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git next-restore-kexec commit 529aa195198645e2a8e97872e5d57a929883a910 ("ima: store the builtin/custom template definitions in a list") in testcase: boot on test machine: qemu-system-x86_64 -enable-kvm -cpu host -smp 2 -m 1G caused below changes: +---+++ | | ae1b8f8c4d | 529aa19519 | +---+++ | boot_successes| 6 | 0 | | boot_failures | 0 | 6 | | BUG:spinlock_bad_magic_on_CPU | 0 | 6 | | calltrace:init_ima| 0 | 6 | +---+++ [ 17.388687] cryptomgr_probe (157) used greatest stack depth: 13872 bytes left [ 17.391265] Key type trusted registered [ 17.393763] Key type encrypted registered [ 17.394912] BUG: spinlock bad magic on CPU#1, swapper/0/1 [ 17.396088] lock: template_list+0x0/0x48, .magic: , .owner: swapper/0/1, .owner_cpu: 1 [ 17.397731] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.8.0-rc1-00027-g529aa19 #1 [ 17.399271] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014 [ 17.401114] 8800364fbdf0 814a5e6c 8800364f1780 [ 17.402879] 82521865 8800364fbe10 810fbfd8 83109280 [ 17.404520] 8225c200 8800364fbe30 810fc003 83109280 [ 17.406024] Call Trace: [ 17.406539] [] dump_stack+0x61/0x7e [ 17.407534] [] ? set_debug_rodata+0x12/0x12 [ 17.408658] [] spin_dump+0x85/0x8a [ 17.409731] [] spin_bug+0x26/0x28 [ 17.410855] [] do_raw_spin_unlock+0x1d/0x7c [ 17.412212] [] _raw_spin_unlock+0x22/0x3f [ 17.413480] [] ima_init_template_list+0x4b/0x55 [ 17.414837] [] ? hash_setup+0xb3/0xb3 [ 17.415982] [] init_ima+0xa/0x36 [ 17.417113] [] do_one_initcall+0x8b/0x119 [ 17.418377] [] ? set_debug_rodata+0x12/0x12 [ 17.419643] [] kernel_init_freeable+0x119/0x1a6 [ 17.420936] [] kernel_init+0x9/0xeb [ 17.421988] [] ret_from_fork+0x1f/0x40 [ 17.423244] [] ? rest_init+0xb9/0xb9 [ 17.451107] ima: No TPM chip found, activating TPM-bypass! [ 17.452384] evm: HMAC attrs: 0x0 Thanks, Kernel Test Robot # # Automatically generated file; DO NOT EDIT. # Linux/x86_64 4.8.0-rc1 Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y CONFIG_X86=y CONFIG_INSTRUCTION_DECODER=y CONFIG_OUTPUT_FORMAT="elf64-x86-64" CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_MMU=y CONFIG_ARCH_MMAP_RND_BITS_MIN=28 CONFIG_ARCH_MMAP_RND_BITS_MAX=32 CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 CONFIG_NEED_DMA_MAP_STATE=y CONFIG_NEED_SG_DMA_LENGTH=y CONFIG_GENERIC_ISA_DMA=y CONFIG_GENERIC_BUG=y CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y CONFIG_GENERIC_HWEIGHT=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_ARCH_HAS_CPU_RELAX=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y CONFIG_ARCH_HIBERNATION_POSSIBLE=y CONFIG_ARCH_SUSPEND_POSSIBLE=y CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y CONFIG_ARCH_WANT_GENERAL_HUGETLB=y CONFIG_ZONE_DMA32=y CONFIG_AUDIT_ARCH=y CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y CONFIG_X86_64_SMP=y CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_FIX_EARLYCON_MEM=y CONFIG_DEBUG_RODATA=y CONFIG_PGTABLE_LEVELS=4 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" CONFIG_IRQ_WORK=y CONFIG_BUILDTIME_EXTABLE_SORT=y # # General setup # CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" # CONFIG_COMPILE_TEST is not set CONFIG_LOCALVERSION="" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y CONFIG_HAVE_KERNEL_LZMA=y CONFIG_HAVE_KERNEL_XZ=y CONFIG_HAVE_KERNEL_LZO=y CONFIG_HAVE_KERNEL_LZ4=y # CONFIG_KERNEL_GZIP is not set # CONFIG_KERNEL_BZIP2 is not set # CONFIG_KERNEL_LZMA is not set # CONFIG_KERNEL_XZ is not set CONFIG_KERNEL_LZO=y # CONFIG_KERNEL_LZ4 is not set CONFIG_DEFAULT_HOSTNAME="(none)" # CONFIG_SWAP is not set # CONFIG_SYSVIPC is not set CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y # CONFIG_CROSS_MEMORY_ATTACH is not set CONFIG_FHANDLE=y CONFIG_USELIB=y # CONFIG_AUDIT is not set CONFIG_HAVE_ARCH_AUDITSYSCALL=y # # IRQ subsystem # CONFIG_GENERIC_IRQ_PROBE=y CONFIG_GENERIC_IRQ_SHOW=y CONFIG_GENERIC_PENDING_IRQ=y CONFIG_GENERIC_IRQ_CHIP=y CONFIG_IRQ_DOMAIN=y CONFIG_IRQ_DOMAIN_HIERARCHY=y CONFIG_IRQ_DOMAIN_DEBUG=y CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_ARCH_CLOCKSOURCE_DATA=y CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y CONFIG_GENERIC_TIME_VSYSCALL=y
[ima] 529aa19519: BUG: spinlock bad magic on CPU#1, swapper/0/1
FYI, we noticed the following commit: https://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity.git next-restore-kexec commit 529aa195198645e2a8e97872e5d57a929883a910 ("ima: store the builtin/custom template definitions in a list") in testcase: boot on test machine: qemu-system-x86_64 -enable-kvm -cpu host -smp 2 -m 1G caused below changes: +---+++ | | ae1b8f8c4d | 529aa19519 | +---+++ | boot_successes| 6 | 0 | | boot_failures | 0 | 6 | | BUG:spinlock_bad_magic_on_CPU | 0 | 6 | | calltrace:init_ima| 0 | 6 | +---+++ [ 17.388687] cryptomgr_probe (157) used greatest stack depth: 13872 bytes left [ 17.391265] Key type trusted registered [ 17.393763] Key type encrypted registered [ 17.394912] BUG: spinlock bad magic on CPU#1, swapper/0/1 [ 17.396088] lock: template_list+0x0/0x48, .magic: , .owner: swapper/0/1, .owner_cpu: 1 [ 17.397731] CPU: 1 PID: 1 Comm: swapper/0 Not tainted 4.8.0-rc1-00027-g529aa19 #1 [ 17.399271] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS Debian-1.8.2-1 04/01/2014 [ 17.401114] 8800364fbdf0 814a5e6c 8800364f1780 [ 17.402879] 82521865 8800364fbe10 810fbfd8 83109280 [ 17.404520] 8225c200 8800364fbe30 810fc003 83109280 [ 17.406024] Call Trace: [ 17.406539] [] dump_stack+0x61/0x7e [ 17.407534] [] ? set_debug_rodata+0x12/0x12 [ 17.408658] [] spin_dump+0x85/0x8a [ 17.409731] [] spin_bug+0x26/0x28 [ 17.410855] [] do_raw_spin_unlock+0x1d/0x7c [ 17.412212] [] _raw_spin_unlock+0x22/0x3f [ 17.413480] [] ima_init_template_list+0x4b/0x55 [ 17.414837] [] ? hash_setup+0xb3/0xb3 [ 17.415982] [] init_ima+0xa/0x36 [ 17.417113] [] do_one_initcall+0x8b/0x119 [ 17.418377] [] ? set_debug_rodata+0x12/0x12 [ 17.419643] [] kernel_init_freeable+0x119/0x1a6 [ 17.420936] [] kernel_init+0x9/0xeb [ 17.421988] [] ret_from_fork+0x1f/0x40 [ 17.423244] [] ? rest_init+0xb9/0xb9 [ 17.451107] ima: No TPM chip found, activating TPM-bypass! [ 17.452384] evm: HMAC attrs: 0x0 Thanks, Kernel Test Robot # # Automatically generated file; DO NOT EDIT. # Linux/x86_64 4.8.0-rc1 Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y CONFIG_X86=y CONFIG_INSTRUCTION_DECODER=y CONFIG_OUTPUT_FORMAT="elf64-x86-64" CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_MMU=y CONFIG_ARCH_MMAP_RND_BITS_MIN=28 CONFIG_ARCH_MMAP_RND_BITS_MAX=32 CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 CONFIG_NEED_DMA_MAP_STATE=y CONFIG_NEED_SG_DMA_LENGTH=y CONFIG_GENERIC_ISA_DMA=y CONFIG_GENERIC_BUG=y CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y CONFIG_GENERIC_HWEIGHT=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_ARCH_HAS_CPU_RELAX=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y CONFIG_ARCH_HIBERNATION_POSSIBLE=y CONFIG_ARCH_SUSPEND_POSSIBLE=y CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y CONFIG_ARCH_WANT_GENERAL_HUGETLB=y CONFIG_ZONE_DMA32=y CONFIG_AUDIT_ARCH=y CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y CONFIG_X86_64_SMP=y CONFIG_ARCH_SUPPORTS_UPROBES=y CONFIG_FIX_EARLYCON_MEM=y CONFIG_DEBUG_RODATA=y CONFIG_PGTABLE_LEVELS=4 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" CONFIG_IRQ_WORK=y CONFIG_BUILDTIME_EXTABLE_SORT=y # # General setup # CONFIG_INIT_ENV_ARG_LIMIT=32 CONFIG_CROSS_COMPILE="" # CONFIG_COMPILE_TEST is not set CONFIG_LOCALVERSION="" CONFIG_LOCALVERSION_AUTO=y CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y CONFIG_HAVE_KERNEL_LZMA=y CONFIG_HAVE_KERNEL_XZ=y CONFIG_HAVE_KERNEL_LZO=y CONFIG_HAVE_KERNEL_LZ4=y # CONFIG_KERNEL_GZIP is not set # CONFIG_KERNEL_BZIP2 is not set # CONFIG_KERNEL_LZMA is not set # CONFIG_KERNEL_XZ is not set CONFIG_KERNEL_LZO=y # CONFIG_KERNEL_LZ4 is not set CONFIG_DEFAULT_HOSTNAME="(none)" # CONFIG_SWAP is not set # CONFIG_SYSVIPC is not set CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE_SYSCTL=y # CONFIG_CROSS_MEMORY_ATTACH is not set CONFIG_FHANDLE=y CONFIG_USELIB=y # CONFIG_AUDIT is not set CONFIG_HAVE_ARCH_AUDITSYSCALL=y # # IRQ subsystem # CONFIG_GENERIC_IRQ_PROBE=y CONFIG_GENERIC_IRQ_SHOW=y CONFIG_GENERIC_PENDING_IRQ=y CONFIG_GENERIC_IRQ_CHIP=y CONFIG_IRQ_DOMAIN=y CONFIG_IRQ_DOMAIN_HIERARCHY=y CONFIG_IRQ_DOMAIN_DEBUG=y CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_ARCH_CLOCKSOURCE_DATA=y CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y CONFIG_GENERIC_TIME_VSYSCALL=y