====================================== | xx__-> [ 16.110856][ T68] ================================================================== | [ 16.111276][ T68] BUG: KASAN: slab-use-after-free in kobject_put (lib/kobject.c:733) | [ 16.111605][ T68] Read of size 1 at addr ffff8880056b4694 by task kworker/u16:1/68 | [ 16.112064][ T68] [ 16.112190][ T68] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 16.112195][ T68] Workqueue: netns cleanup_net [ 16.112203][ T68] Call Trace: [ 16.112206][ T68] [ 16.112211][ T68] dump_stack_lvl (lib/dump_stack.c:123) [ 16.112219][ T68] print_address_description.constprop.0 (mm/kasan/report.c:379) [ 16.112228][ T68] ? kobject_put (lib/kobject.c:733) [ 16.112234][ T68] print_report (mm/kasan/report.c:483) [ 16.112240][ T68] ? kobject_put (lib/kobject.c:733) [ 16.112245][ T68] ? kasan_addr_to_slab (./include/linux/mm.h:1245 mm/kasan/../slab.h:191 mm/kasan/common.c:47) [ 16.112250][ T68] ? kobject_put (lib/kobject.c:733) [ 16.112253][ T68] kasan_report (mm/kasan/report.c:597) [ 16.112259][ T68] ? kobject_put (lib/kobject.c:733) [ 16.112266][ T68] kobject_put (lib/kobject.c:733) [ 16.112270][ T68] netdev_run_todo (./include/linux/list.h:381 net/core/dev.c:11670) [ 16.112277][ T68] ? dev_ingress_queue_create (net/core/dev.c:12299) [ 16.112281][ T68] ? generic_xdp_install (net/core/dev.c:11630) [ 16.112291][ T68] ops_undo_list (net/core/net_namespace.c:190 net/core/net_namespace.c:248) [ 16.112297][ T68] ? netns_get (net/core/net_namespace.c:223) [ 16.112299][ T68] ? cleanup_net (./include/linux/list.h:191 net/core/net_namespace.c:693) [ 16.112306][ T68] cleanup_net (net/core/net_namespace.c:698) [ 16.112310][ T68] ? net_passive_dec (net/core/net_namespace.c:660) [ 16.112315][ T68] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 16.112323][ T68] process_one_work (kernel/workqueue.c:3268) [ 16.112332][ T68] ? pwq_dec_nr_in_flight (kernel/workqueue.c:3165) [ 16.112340][ T68] ? assign_work (kernel/workqueue.c:1206) [ 16.112348][ T68] worker_thread (kernel/workqueue.c:3340 kernel/workqueue.c:3427) [ 16.112358][ T68] ? rescuer_thread (kernel/workqueue.c:3373) [ 16.112365][ T68] kthread (kernel/kthread.c:463) [ 16.112371][ T68] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.112375][ T68] ? ret_from_fork (arch/x86/kernel/process.c:157) [ 16.112381][ T68] ? __lock_release (kernel/locking/lockdep.c:5536) [ 16.112389][ T68] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 16.112394][ T68] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.112400][ T68] ret_from_fork (arch/x86/kernel/process.c:164) [ 16.112404][ T68] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.112407][ T68] ret_from_fork_asm (arch/x86/entry/entry_64.S:255) | [ 16.142881][ T68] refcount_t: underflow; use-after-free. | [ 16.143257][ T68] WARNING: CPU: 2 PID: 68 at lib/refcount.c:28 refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) | [ 16.143582][ T68] Modules linked in: veth | [ 16.144325][ T68] Tainted: [B]=BAD_PAGE [ 16.144548][ T68] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 16.144784][ T68] Workqueue: netns cleanup_net [ 16.145028][ T68] RIP: 0010:refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) [ 16.145270][ T68] Code: 48 92 02 80 fb 01 0f 87 cb 7d d9 fe 83 e3 01 0f 85 51 ff ff ff c6 05 75 48 92 02 01 90 48 c7 c7 a0 8d 25 85 e8 42 93 18 ff 90 <0f> 0b 90 90 e9 33 ff ff ff 48 89 df e8 c0 37 a1 ff e9 ba fe ff ff All code ======== 0: 48 92 xchg %rax,%rdx 2: 02 80 fb 01 0f 87 add -0x78f0fe05(%rax),%al 8: cb lret 9: 7d d9 jge 0xffffffffffffffe4 b: fe 83 e3 01 0f 85 incb -0x7af0fe1d(%rbx) 11: 51 push %rcx 12: ff (bad) 13: ff (bad) 14: ff c6 inc %esi 16: 05 75 48 92 02 add $0x2924875,%eax 1b: 01 90 48 c7 c7 a0 add %edx,-0x5f3838b8(%rax) 21: 8d 25 85 e8 42 93 lea -0x6cbd177b(%rip),%esp # 0xffffffff9342e8ac 27: 18 ff sbb %bh,%bh 29: 90 nop 2a:* 0f 0b ud2 <-- trapping instruction 2c: 90 nop 2d: 90 nop 2e: e9 33 ff ff ff jmp 0xffffffffffffff66 33: 48 89 df mov %rbx,%rdi 36: e8 c0 37 a1 ff call 0xffffffffffa137fb 3b: e9 ba fe ff ff jmp 0xfffffffffffffefa Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: 90 nop 3: 90 nop 4: e9 33 ff ff ff jmp 0xffffffffffffff3c 9: 48 89 df mov %rbx,%rdi c: e8 c0 37 a1 ff call 0xffffffffffa137d1 11: e9 ba fe ff ff jmp 0xfffffffffffffed0 [ 16.145917][ T68] RSP: 0018:ffffc90000497a08 EFLAGS: 00010282 [ 16.146177][ T68] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 [ 16.146515][ T68] RDX: 0000000000000002 RSI: 0000000000000004 RDI: 0000000000000001 [ 16.146801][ T68] RBP: 0000000000000003 R08: 0000000000000000 R09: fffffbfff0b7e134 [ 16.147109][ T68] R10: 0000000000000003 R11: ffffc90000497580 R12: 0000000000000001 [ 16.147404][ T68] R13: dffffc0000000000 R14: dead000000000122 R15: dead000000000100 [ 16.147665][ T68] FS: 0000000000000000(0000) GS:ffff8880af310000(0000) knlGS:0000000000000000 [ 16.148021][ T68] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 16.148253][ T68] CR2: 000055cd4179f45c CR3: 0000000009d6f005 CR4: 0000000000772ef0 [ 16.148519][ T68] PKRU: 55555554 [ 16.148677][ T68] Call Trace: [ 16.148901][ T68] [ 16.149019][ T68] netdev_run_todo (./include/linux/list.h:381 net/core/dev.c:11670) [ 16.149214][ T68] ? dev_ingress_queue_create (net/core/dev.c:12299) [ 16.149408][ T68] ? generic_xdp_install (net/core/dev.c:11630) [ 16.149589][ T68] ops_undo_list (net/core/net_namespace.c:190 net/core/net_namespace.c:248) [ 16.149785][ T68] ? netns_get (net/core/net_namespace.c:223) [ 16.150008][ T68] ? cleanup_net (./include/linux/list.h:191 net/core/net_namespace.c:693) [ 16.150205][ T68] cleanup_net (net/core/net_namespace.c:698) [ 16.150411][ T68] ? net_passive_dec (net/core/net_namespace.c:660) [ 16.150620][ T68] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 16.150837][ T68] process_one_work (kernel/workqueue.c:3268) [ 16.151026][ T68] ? pwq_dec_nr_in_flight (kernel/workqueue.c:3165) [ 16.151205][ T68] ? assign_work (kernel/workqueue.c:1206) [ 16.151389][ T68] worker_thread (kernel/workqueue.c:3340 kernel/workqueue.c:3427) [ 16.151572][ T68] ? rescuer_thread (kernel/workqueue.c:3373) [ 16.151755][ T68] kthread (kernel/kthread.c:463) [ 16.151974][ T68] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.152155][ T68] ? ret_from_fork (arch/x86/kernel/process.c:157) [ 16.152331][ T68] ? __lock_release (kernel/locking/lockdep.c:5536) [ 16.152522][ T68] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 16.152708][ T68] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.152892][ T68] ret_from_fork (arch/x86/kernel/process.c:164) [ 16.153078][ T68] ? kthread_is_per_cpu (kernel/kthread.c:412) Finger prints: print_report:kasan_report:kobject_put:netdev_run_todo:ops_undo_list refcount_warn_saturate:netdev_run_todo:ops_undo_list:cleanup_net:process_one_work