================================================================== kasan: CONFIG_KASAN_INLINE enabled BUG: KASAN: stack-out-of-bounds in pgd_val arch/x86/include/asm/paravirt.h:414 [inline] BUG: KASAN: stack-out-of-bounds in p4d_page_vaddr arch/x86/include/asm/pgtable.h:895 [inline] BUG: KASAN: stack-out-of-bounds in pud_offset arch/x86/include/asm/pgtable.h:907 [inline] BUG: KASAN: stack-out-of-bounds in vmalloc_fault+0x6d0/0x770 arch/x86/mm/fault.c:397 kasan: GPF could be caused by NULL-ptr deref or user memory access Read of size 8 at addr ffff8881da96cff8 by task syz-executor2/6103 general protection fault: 0000 [#1] PREEMPT SMP KASAN CPU: 0 PID: 30259 Comm: syz-executor3 Not tainted 4.20.0-rc6+ #340 CPU: 1 PID: 6103 Comm: syz-executor2 Not tainted 4.20.0-rc6+ #340 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:lookup_object lib/debugobjects.c:156 [inline] RIP: 0010:debug_object_deactivate+0x191/0x450 lib/debugobjects.c:542 Call Trace: ------------[ cut here ]------------ __dump_stack lib/dump_stack.c:77 [inline] dump_stack+0x244/0x39d lib/dump_stack.c:113 Bad or missing usercopy whitelist? Kernel memory overwrite attempt detected to SLAB object '@' (offset 18446744072098945616, size 64)! WARNING: CPU: 0 PID: 30259 at mm/usercopy.c:83 usercopy_warn+0xee/0x110 mm/usercopy.c:78 Kernel panic - not syncing: panic_on_warn set ... print_address_description.cold.7+0x9/0x1ff mm/kasan/report.c:256 kasan_report_error mm/kasan/report.c:354 [inline] kasan_report.cold.8+0x242/0x309 mm/kasan/report.c:412 __asan_report_load8_noabort+0x14/0x20 mm/kasan/report.c:433 pgd_val arch/x86/include/asm/paravirt.h:414 [inline] p4d_page_vaddr arch/x86/include/asm/pgtable.h:895 [inline] pud_offset arch/x86/include/asm/pgtable.h:907 [inline] vmalloc_fault+0x6d0/0x770 arch/x86/mm/fault.c:397 do_kern_addr_fault arch/x86/mm/fault.c:1203 [inline] __do_page_fault+0x860/0xe60 arch/x86/mm/fault.c:1487 do_page_fault+0xf2/0x7e0 arch/x86/mm/fault.c:1520 page_fault+0x1e/0x30 arch/x86/entry/entry_64.S:1143 RIP: 0010:percpu_counter_add_batch+0x5b/0x190 lib/percpu_counter.c:87 Code: c7 40 09 63 88 e8 d5 bf ee ff 4c 89 f2 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 80 3c 02 00 0f 85 14 01 00 00 4d 8b 7c 24 50 <65> 45 8b 2f 48 63 45 d0 49 63 dd 48 03 5d c8 48 89 c7 48 89 45 c0 RSP: 0018:ffff8881c3df6d58 EFLAGS: 00010246 RAX: dffffc0000000000 RBX: ffff888188d03300 RCX: ffffffff83938cca RDX: 1ffff11038a51565 RSI: ffffffff83938cd8 RDI: 0000000000000005 RBP: ffff8881c3df6d98 R08: ffff8881bc276600 R09: ffffed1038a51af0 R10: ffffed1038a51af0 R11: ffff8881c528d783 R12: ffff8881c528aad8 R13: ffff8881b241b2a0 R14: ffff8881c528ab28 R15: 0000607e24e2b4f8 percpu_counter_add include/linux/percpu_counter.h:55 [inline] percpu_counter_sub include/linux/percpu_counter.h:189 [inline] ext4_mb_mark_diskspace_used+0x902/0x10d0 fs/ext4/mballoc.c:3008 ext4_mb_new_blocks+0xea5/0x4840 fs/ext4/mballoc.c:4555 ext4_ext_map_blocks+0x2724/0x48f0 fs/ext4/extents.c:4404 ext4_map_blocks+0x8f7/0x1b50 fs/ext4/inode.c:636 ext4_getblk+0x10e/0x630 fs/ext4/inode.c:966 ext4_bread+0x95/0x2b0 fs/ext4/inode.c:1016 ext4_append+0x14e/0x370 fs/ext4/namei.c:66 ext4_init_new_dir fs/ext4/namei.c:2589 [inline] ext4_mkdir+0x532/0xe60 fs/ext4/namei.c:2636 vfs_mkdir+0x42e/0x6b0 fs/namei.c:3817 do_mkdirat+0x27a/0x310 fs/namei.c:3840 __do_sys_mkdir fs/namei.c:3856 [inline] __se_sys_mkdir fs/namei.c:3854 [inline] __x64_sys_mkdir+0x5c/0x80 fs/namei.c:3854 do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x456a97 Code: 1f 40 00 b8 5a 00 00 00 0f 05 48 3d 01 f0 ff ff 0f 83 cd bf fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 b8 53 00 00 00 0f 05 <48> 3d 01 f0 ff ff 0f 83 ad bf fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007ffedaf22608 EFLAGS: 00000202 ORIG_RAX: 0000000000000053 RAX: ffffffffffffffda RBX: 00000000001ea361 RCX: 0000000000456a97 RDX: 00007ffedaf22656 RSI: 00000000000001ff RDI: 00007ffedaf22650 RBP: 0000000000003495 R08: 0000000000000000 R09: 0000000000000006 R10: 0000000000000064 R11: 0000000000000202 R12: 0000000000000003 R13: 00000000001ea336 R14: 0000000000001674 R15: 0000000000000002 The buggy address belongs to the page: page:ffffea00076a5b00 count:1 mapcount:0 mapping:0000000000000000 index:0x0 flags: 0x2fffc0000000000() raw: 02fffc0000000000 dead000000000100 dead000000000200 0000000000000000 raw: 0000000000000000 0000000000000000 00000001ffffffff 0000000000000000 page dumped because: kasan: bad access detected Memory state around the buggy address: ffff8881da96ce80: 00 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 ffff8881da96cf00: f1 00 f2 f2 f2 f2 f2 f2 f2 f8 f2 f2 f2 00 00 00 >ffff8881da96cf80: 00 00 00 00 00 00 00 00 00 00 00 00 00 f1 f1 f1 ^ ffff8881da96d000: f1 f8 f2 f2 f2 00 00 00 00 00 00 00 00 00 00 00 ffff8881da96d080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ================================================================== kasan: CONFIG_KASAN_INLINE enabled kasan: GPF could be caused by NULL-ptr deref or user memory access Shutting down cpus with NMI Kernel Offset: disabled ====================================================== WARNING: possible circular locking dependency detected 4.20.0-rc6+ #340 Not tainted ------------------------------------------------------ syz-executor3/30259 is trying to acquire lock: 0000000057f72afe ((console_sem).lock){-.-.}, at: down_trylock+0x13/0x70 kernel/locking/semaphore.c:136 but task is already holding lock: 00000000960c4811 (&obj_hash[i].lock){-.-.}, at: debug_object_deactivate+0xf7/0x450 lib/debugobjects.c:540 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #3 (&obj_hash[i].lock){-.-.}: __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x99/0xd0 kernel/locking/spinlock.c:152 __debug_object_init+0x127/0x1290 lib/debugobjects.c:383 debug_object_init+0x16/0x20 lib/debugobjects.c:431 debug_hrtimer_init kernel/time/hrtimer.c:410 [inline] debug_init kernel/time/hrtimer.c:458 [inline] hrtimer_init+0x97/0x490 kernel/time/hrtimer.c:1308 init_dl_task_timer+0x1b/0x50 kernel/sched/deadline.c:1057 __sched_fork+0x2ae/0x590 kernel/sched/core.c:2166 init_idle+0x75/0x740 kernel/sched/core.c:5374 sched_init+0xb33/0xc07 kernel/sched/core.c:6063 start_kernel+0x4c1/0xa30 init/main.c:608 x86_64_start_reservations+0x29/0x2b arch/x86/kernel/head64.c:470 x86_64_start_kernel+0x76/0x79 arch/x86/kernel/head64.c:451 secondary_startup_64+0xa4/0xb0 arch/x86/kernel/head_64.S:243 -> #2 (&rq->lock){-.-.}: __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline] _raw_spin_lock+0x2d/0x40 kernel/locking/spinlock.c:144 rq_lock kernel/sched/sched.h:1124 [inline] task_fork_fair+0xb0/0x6d0 kernel/sched/fair.c:9802 sched_fork+0x443/0xba0 kernel/sched/core.c:2359 copy_process+0x25b8/0x87a0 kernel/fork.c:1887 _do_fork+0x1cb/0x11d0 kernel/fork.c:2216 kernel_thread+0x34/0x40 kernel/fork.c:2275 rest_init+0x28/0x372 init/main.c:409 arch_call_rest_init+0xe/0x1b start_kernel+0x9f5/0xa30 init/main.c:745 x86_64_start_reservations+0x29/0x2b arch/x86/kernel/head64.c:470 x86_64_start_kernel+0x76/0x79 arch/x86/kernel/head64.c:451 secondary_startup_64+0xa4/0xb0 arch/x86/kernel/head_64.S:243 -> #1 (&p->pi_lock){-.-.}: __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x99/0xd0 kernel/locking/spinlock.c:152 try_to_wake_up+0xdc/0x1440 kernel/sched/core.c:1965 wake_up_process+0x10/0x20 kernel/sched/core.c:2129 __up.isra.1+0x1c0/0x2a0 kernel/locking/semaphore.c:262 up+0x13c/0x1c0 kernel/locking/semaphore.c:187 __up_console_sem+0xbe/0x1b0 kernel/printk/printk.c:236 console_unlock+0x811/0x1190 kernel/printk/printk.c:2432 vprintk_emit+0x391/0x990 kernel/printk/printk.c:1922 vprintk_default+0x28/0x30 kernel/printk/printk.c:1964 vprintk_func+0x7e/0x181 kernel/printk/printk_safe.c:398 printk+0xa7/0xcf kernel/printk/printk.c:1997 check_stack_usage kernel/exit.c:755 [inline] do_exit.cold.18+0x57/0x16f kernel/exit.c:916 do_group_exit+0x177/0x440 kernel/exit.c:970 __do_sys_exit_group kernel/exit.c:981 [inline] __se_sys_exit_group kernel/exit.c:979 [inline] __x64_sys_exit_group+0x3e/0x50 kernel/exit.c:979 do_syscall_64+0x1b9/0x820 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x49/0xbe -> #0 ((console_sem).lock){-.-.}: other info that might help us debug this: Chain exists of: (console_sem).lock --> &rq->lock --> &obj_hash[i].lock Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&obj_hash[i].lock); lock(&rq->lock); lock(&obj_hash[i].lock); lock((console_sem).lock); *** DEADLOCK *** 5 locks held by syz-executor3/30259: #0: 000000008bcd2554 (rcu_read_lock){....}, at: __skb_unlink include/linux/skbuff.h:1922 [inline] #0: 000000008bcd2554 (rcu_read_lock){....}, at: __skb_dequeue include/linux/skbuff.h:1938 [inline] #0: 000000008bcd2554 (rcu_read_lock){....}, at: process_backlog+0x1dd/0x7a0 net/core/dev.c:5909 #1: 000000008bcd2554 (rcu_read_lock){....}, at: __skb_pull include/linux/skbuff.h:2155 [inline] #1: 000000008bcd2554 (rcu_read_lock){....}, at: ip_local_deliver_finish+0x13d/0x390 net/ipv4/ip_input.c:231 #2: 00000000947bef19 (hrtimer_bases.lock){-.-.}, at: hrtimer_interrupt+0xfc/0x780 kernel/time/hrtimer.c:1499 #3: 00000000960c4811 (&obj_hash[i].lock){-.-.}, at: debug_object_deactivate+0xf7/0x450 lib/debugobjects.c:540 #4: 000000008bcd2554 (rcu_read_lock){....}, at: atomic_notifier_call_chain+0x0/0x190 kernel/notifier.c:329 stack backtrace: CPU: 0 PID: 30259 Comm: syz-executor3 Not tainted 4.20.0-rc6+ #340 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 Call Trace: Rebooting in 86400 seconds..