Kernel panic - not syncing: stack-protector: Kernel stack is corrupted in: __switch_to+0xe9d/0x1c30 ===================================== WARNING: bad unlock balance detected! 6.11.0-rc4-next-20240823-syzkaller #0 Not tainted ------------------------------------- syz.3.310/6995 is trying to release lock ((console_sem).lock) at: [] down_trylock+0x57/0xa0 kernel/locking/semaphore.c:143 but there are no more locks to release! other info that might help us debug this: 1 lock held by syz.3.310/6995: #0: ffff88801d288b18 (&mm->mmap_lock){++++}-{3:3}, at: __might_fault+0xaa/0x120 mm/memory.c:6394 stack backtrace: CPU: 0 UID: 0 PID: 6995 Comm: syz.3.310 Not tainted 6.11.0-rc4-next-20240823-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/06/2024 Call Trace: __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120 print_unlock_imbalance_bug+0x25b/0x2d0 kernel/locking/lockdep.c:5263 __lock_release kernel/locking/lockdep.c:5502 [inline] lock_release+0x5cb/0xa30 kernel/locking/lockdep.c:5846 __raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:149 [inline] _raw_spin_unlock_irqrestore+0x79/0x140 kernel/locking/spinlock.c:194 down_trylock+0x57/0xa0 kernel/locking/semaphore.c:143 __down_trylock_console_sem+0x109/0x250 kernel/printk/printk.c:325 console_trylock kernel/printk/printk.c:2811 [inline] console_trylock_spinning kernel/printk/printk.c:1985 [inline] vprintk_emit+0x4b2/0xa10 kernel/printk/printk.c:2398 Oops: general protection fault, probably for non-canonical address 0xe000856f77000020: 0000 [#1] PREEMPT SMP KASAN PTI KASAN: maybe wild-memory-access in range [0x00044b7bb8000100-0x00044b7bb8000107] CPU: 0 UID: 0 PID: 6995 Comm: syz.3.310 Not tainted 6.11.0-rc4-next-20240823-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/06/2024 RIP: 0010:string_nocheck lib/vsprintf.c:646 [inline] RIP: 0010:string+0x1a5/0x2b0 lib/vsprintf.c:728 Code: 85 c0 0f 84 db 00 00 00 4c 89 7c 24 08 49 89 c7 49 ff cf 31 db 49 8d 3c 1c 48 89 f8 48 c1 e8 03 48 b9 00 00 00 00 00 fc ff df <0f> b6 04 08 84 c0 75 5d 4c 8d 6c 1d 00 41 0f b6 2c 1c 31 ff 89 ee RSP: 0018:ffffc900044b6250 EFLAGS: 00010002 RAX: 0000896f77000020 RBX: 0000000000000000 RCX: dffffc0000000000 RDX: ffff888022420000 RSI: ffffffffffffffff RDI: 00044b7bb8000101 RBP: ffffffff94fa5618 R08: ffffffff8bb8a4a7 R09: ffffffff8bb86b44 R10: 0000000000000012 R11: ffff888022420000 R12: 00044b7bb8000101 R13: 0000000000000000 R14: ffffffff94fa5618 R15: fffffffffffffffe FS: 00007f35ec6126c0(0000) GS:ffff8880b9000000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000110c3bf258 CR3: 00000000224fa000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: vsnprintf+0x1101/0x1da0 lib/vsprintf.c:2803 vscnprintf+0x42/0x90 lib/vsprintf.c:2909 printk_sprint+0x31/0x4b0 kernel/printk/printk.c:2192 vprintk_store+0x984/0x1160 kernel/printk/printk.c:2306 vprintk_emit+0x39b/0xa10 kernel/printk/printk.c:2378 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:string_nocheck lib/vsprintf.c:646 [inline] RIP: 0010:string+0x1a5/0x2b0 lib/vsprintf.c:728 Code: 85 c0 0f 84 db 00 00 00 4c 89 7c 24 08 49 89 c7 49 ff cf 31 db 49 8d 3c 1c 48 89 f8 48 c1 e8 03 48 b9 00 00 00 00 00 fc ff df <0f> b6 04 08 84 c0 75 5d 4c 8d 6c 1d 00 41 0f b6 2c 1c 31 ff 89 ee RSP: 0018:ffffc900044b6250 EFLAGS: 00010002 RAX: 0000896f77000020 RBX: 0000000000000000 RCX: dffffc0000000000 RDX: ffff888022420000 RSI: ffffffffffffffff RDI: 00044b7bb8000101 RBP: ffffffff94fa5618 R08: ffffffff8bb8a4a7 R09: ffffffff8bb86b44 R10: 0000000000000012 R11: ffff888022420000 R12: 00044b7bb8000101 R13: 0000000000000000 R14: ffffffff94fa5618 R15: fffffffffffffffe FS: 00007f35ec6126c0(0000) GS:ffff8880b9000000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000110c3bf258 CR3: 00000000224fa000 CR4: 00000000003506f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 85 c0 test %eax,%eax 2: 0f 84 db 00 00 00 je 0xe3 8: 4c 89 7c 24 08 mov %r15,0x8(%rsp) d: 49 89 c7 mov %rax,%r15 10: 49 ff cf dec %r15 13: 31 db xor %ebx,%ebx 15: 49 8d 3c 1c lea (%r12,%rbx,1),%rdi 19: 48 89 f8 mov %rdi,%rax 1c: 48 c1 e8 03 shr $0x3,%rax 20: 48 b9 00 00 00 00 00 movabs $0xdffffc0000000000,%rcx 27: fc ff df * 2a: 0f b6 04 08 movzbl (%rax,%rcx,1),%eax <-- trapping instruction 2e: 84 c0 test %al,%al 30: 75 5d jne 0x8f 32: 4c 8d 6c 1d 00 lea 0x0(%rbp,%rbx,1),%r13 37: 41 0f b6 2c 1c movzbl (%r12,%rbx,1),%ebp 3c: 31 ff xor %edi,%edi 3e: 89 ee mov %ebp,%esi