====================================== | xx__-> [ 16.574048][ T69] ================================================================== | [ 16.574369][ T69] BUG: KASAN: slab-use-after-free in kobject_put (lib/kobject.c:733) | [ 16.574672][ T69] Read of size 1 at addr ffff8880083816c4 by task kworker/u16:1/69 | [ 16.574930][ T69] [ 16.575028][ T69] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 16.575032][ T69] Workqueue: netns cleanup_net [ 16.575042][ T69] Call Trace: [ 16.575045][ T69] [ 16.575048][ T69] dump_stack_lvl (lib/dump_stack.c:123) [ 16.575053][ T69] print_address_description.constprop.0 (mm/kasan/report.c:379) [ 16.575061][ T69] ? kobject_put (lib/kobject.c:733) [ 16.575065][ T69] print_report (mm/kasan/report.c:483) [ 16.575068][ T69] ? kobject_put (lib/kobject.c:733) [ 16.575072][ T69] ? kasan_addr_to_slab (./include/linux/mm.h:1245 mm/kasan/../slab.h:191 mm/kasan/common.c:47) [ 16.575076][ T69] ? kobject_put (lib/kobject.c:733) [ 16.575079][ T69] kasan_report (mm/kasan/report.c:597) [ 16.575083][ T69] ? kobject_put (lib/kobject.c:733) [ 16.575088][ T69] kobject_put (lib/kobject.c:733) [ 16.575091][ T69] netdev_run_todo (./include/linux/list.h:381 net/core/dev.c:11670) [ 16.575100][ T69] ? dev_ingress_queue_create (net/core/dev.c:12299) [ 16.575105][ T69] ? generic_xdp_install (net/core/dev.c:11630) [ 16.575110][ T69] ? net_generic (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 ./include/net/netns/generic.h:48) [ 16.575122][ T69] ops_undo_list (net/core/net_namespace.c:190 net/core/net_namespace.c:248) [ 16.575127][ T69] ? rtnl_net_dumpid_one (net/core/net_namespace.c:223) [ 16.575131][ T69] ? cleanup_net (./include/linux/list.h:191 net/core/net_namespace.c:693) [ 16.575137][ T69] cleanup_net (net/core/net_namespace.c:698) [ 16.575141][ T69] ? net_passive_dec (net/core/net_namespace.c:660) [ 16.575146][ T69] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 16.575154][ T69] process_one_work (kernel/workqueue.c:3268) [ 16.575164][ T69] ? pwq_dec_nr_in_flight (kernel/workqueue.c:3165) [ 16.575170][ T69] ? assign_work (kernel/workqueue.c:1206) [ 16.575174][ T69] worker_thread (kernel/workqueue.c:3340 kernel/workqueue.c:3427) [ 16.575180][ T69] ? rescuer_thread (kernel/workqueue.c:3373) [ 16.575184][ T69] kthread (kernel/kthread.c:463) [ 16.575188][ T69] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.575191][ T69] ? ret_from_fork (arch/x86/kernel/process.c:157) [ 16.575197][ T69] ? __lock_release (kernel/locking/lockdep.c:5536) [ 16.575201][ T69] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 16.575204][ T69] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.575208][ T69] ret_from_fork (arch/x86/kernel/process.c:164) [ 16.575211][ T69] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.575214][ T69] ret_from_fork_asm (arch/x86/entry/entry_64.S:255) | [ 16.593165][ T69] refcount_t: underflow; use-after-free. | [ 16.593369][ T69] WARNING: CPU: 0 PID: 69 at lib/refcount.c:28 refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) | [ 16.593655][ T69] Modules linked in: | [ 16.594139][ T69] Tainted: [B]=BAD_PAGE [ 16.594264][ T69] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 16.595026][ T69] Workqueue: netns cleanup_net [ 16.595214][ T69] RIP: 0010:refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) [ 16.595489][ T69] Code: cc 38 03 80 fb 01 0f 87 29 33 d7 fe 83 e3 01 0f 85 51 ff ff ff c6 05 17 cc 38 03 01 90 48 c7 c7 40 ba e5 a2 e8 62 d6 16 ff 90 <0f> 0b 90 90 e9 33 ff ff ff 48 89 df e8 c0 9d a0 ff e9 ba fe ff ff All code ======== 0: cc int3 1: 38 03 cmp %al,(%rbx) 3: 80 fb 01 cmp $0x1,%bl 6: 0f 87 29 33 d7 fe ja 0xfffffffffed73335 c: 83 e3 01 and $0x1,%ebx f: 0f 85 51 ff ff ff jne 0xffffffffffffff66 15: c6 05 17 cc 38 03 01 movb $0x1,0x338cc17(%rip) # 0x338cc33 1c: 90 nop 1d: 48 c7 c7 40 ba e5 a2 mov $0xffffffffa2e5ba40,%rdi 24: e8 62 d6 16 ff call 0xffffffffff16d68b 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 9d a0 ff call 0xffffffffffa09dfb 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 9d a0 ff call 0xffffffffffa09dd1 11: e9 ba fe ff ff jmp 0xfffffffffffffed0 [ 16.596088][ T69] RSP: 0018:ffffc900004a7a08 EFLAGS: 00010282 [ 16.596325][ T69] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 [ 16.596674][ T69] RDX: 0000000000000002 RSI: 0000000000000004 RDI: 0000000000000001 [ 16.596907][ T69] RBP: 0000000000000003 R08: 0000000000000000 R09: fffffbfff47c0934 [ 16.597160][ T69] R10: 0000000000000003 R11: ffffc900004a7580 R12: 0000000000000001 [ 16.597473][ T69] R13: dffffc0000000000 R14: dead000000000122 R15: dead000000000100 [ 16.597718][ T69] FS: 0000000000000000(0000) GS:ffff8880c7d08000(0000) knlGS:0000000000000000 [ 16.597991][ T69] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 16.598196][ T69] CR2: 00007f455f04eae0 CR3: 000000005a149002 CR4: 0000000000772ef0 [ 16.598497][ T69] PKRU: 55555554 [ 16.598623][ T69] Call Trace: [ 16.598739][ T69] [ 16.598820][ T69] netdev_run_todo (./include/linux/list.h:381 net/core/dev.c:11670) [ 16.598981][ T69] ? dev_ingress_queue_create (net/core/dev.c:12299) [ 16.599154][ T69] ? generic_xdp_install (net/core/dev.c:11630) [ 16.599306][ T69] ? net_generic (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 ./include/net/netns/generic.h:48) [ 16.599530][ T69] ops_undo_list (net/core/net_namespace.c:190 net/core/net_namespace.c:248) [ 16.599703][ T69] ? rtnl_net_dumpid_one (net/core/net_namespace.c:223) [ 16.599858][ T69] ? cleanup_net (./include/linux/list.h:191 net/core/net_namespace.c:693) [ 16.600017][ T69] cleanup_net (net/core/net_namespace.c:698) [ 16.600170][ T69] ? net_passive_dec (net/core/net_namespace.c:660) [ 16.600323][ T69] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 16.600556][ T69] process_one_work (kernel/workqueue.c:3268) [ 16.600723][ T69] ? pwq_dec_nr_in_flight (kernel/workqueue.c:3165) [ 16.600887][ T69] ? assign_work (kernel/workqueue.c:1206) [ 16.601047][ T69] worker_thread (kernel/workqueue.c:3340 kernel/workqueue.c:3427) [ 16.601207][ T69] ? rescuer_thread (kernel/workqueue.c:3373) [ 16.601393][ T69] kthread (kernel/kthread.c:463) [ 16.601516][ T69] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.601679][ T69] ? ret_from_fork (arch/x86/kernel/process.c:157) [ 16.601839][ T69] ? __lock_release (kernel/locking/lockdep.c:5536) [ 16.602002][ T69] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 16.602160][ T69] ? kthread_is_per_cpu (kernel/kthread.c:412) [ 16.602318][ T69] ret_from_fork (arch/x86/kernel/process.c:164) [ 16.602486][ T69] ? 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