====================================== | [ 456.989893][ T70] ================================================================== | [ 456.990364][ T70] BUG: KASAN: slab-use-after-free in kobject_put (lib/kobject.c:729) | [ 456.990802][ T70] Read of size 1 at addr ffff888005f1347c by task kworker/u8:1/70 | [ 456.991212][ T70] [ 456.991764][ T70] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 456.992405][ T70] Workqueue: netns cleanup_net [ 456.992665][ T70] Call Trace: [ 456.992849][ T70] [ 456.993018][ T70] dump_stack_lvl (lib/dump_stack.c:107) [ 456.993266][ T70] print_address_description.constprop.0 (mm/kasan/report.c:378) [ 456.993623][ T70] ? kobject_put (lib/kobject.c:729) [ 456.993883][ T70] print_report (mm/kasan/report.c:489) [ 456.994123][ T70] ? kasan_addr_to_slab (./arch/x86/include/asm/bitops.h:206 ./arch/x86/include/asm/bitops.h:238 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 ./include/linux/page-flags.h:481 mm/kasan/../slab.h:206 mm/kasan/common.c:38) [ 456.994396][ T70] kasan_report (mm/kasan/report.c:603) [ 456.994662][ T70] ? kobject_put (lib/kobject.c:729) [ 456.994931][ T70] kobject_put (lib/kobject.c:729) [ 456.995169][ T70] br_sysfs_delbr (net/bridge/br_sysfs_br.c:1086) [ 456.995431][ T70] br_dev_delete (net/bridge/br_if.c:396) [ 456.995708][ T70] ? net_generic (./include/net/netns/generic.h:51) bareudp [ 456.996029][ T70] br_net_exit_batch_rtnl (net/bridge/br.c:369) [ 456.996319][ T70] cleanup_net (net/core/net_namespace.c:628 (discriminator 2)) [ 456.996568][ T70] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5719) [ 456.996900][ T70] ? __pfx_cleanup_net (net/core/net_namespace.c:581) [ 456.997184][ T70] ? lock_acquire (./include/trace/events/lock.h:24 kernel/locking/lockdep.c:5725) [ 456.997441][ T70] ? process_one_work (kernel/workqueue.c:2609) [ 456.997745][ T70] process_one_work (kernel/workqueue.c:2638) [ 456.998041][ T70] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:228) [ 456.998308][ T70] ? __pfx_process_one_work (kernel/workqueue.c:2542) [ 456.998607][ T70] ? assign_work (kernel/workqueue.c:1101) [ 456.998880][ T70] worker_thread (kernel/workqueue.c:2700 kernel/workqueue.c:2787) [ 456.999149][ T70] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4300 kernel/locking/lockdep.c:4359) [ 456.999528][ T70] ? __pfx_worker_thread (kernel/workqueue.c:2733) [ 456.999814][ T70] ? __pfx_worker_thread (kernel/workqueue.c:2733) [ 457.000126][ T70] kthread (kernel/kthread.c:388) [ 457.000355][ T70] ? __pfx_kthread (kernel/kthread.c:341) [ 457.000612][ T70] ret_from_fork (arch/x86/kernel/process.c:153) [ 457.000869][ T70] ? __pfx_kthread (kernel/kthread.c:341) [ 457.001126][ T70] ret_from_fork_asm (arch/x86/entry/entry_64.S:250) | [ 457.021382][ T70] ------------[ cut here ]------------ | [ 457.021704][ T70] refcount_t: underflow; use-after-free. | [ 457.022082][ T70] WARNING: CPU: 3 PID: 70 at lib/refcount.c:28 refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) | [ 457.022586][ T70] Modules linked in: xt_HL amt cls_matchall ip6_gre gre act_mirred act_tunnel_key cls_flower bareudp ip6_udp_tunnel udp_tunnel mpls_iptunnel mpls_router cls_bpf sch_ingress xt_conntrack nf_conntrack nf_defrag_ipv4 nft_compat nf_tables libcrc32c nf_defrag_ipv6 [ 457.024418][ T70] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 457.025108][ T70] Workqueue: netns cleanup_net [ 457.025395][ T70] RIP: 0010:refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) [ 457.025765][ T70] Code: f9 82 03 80 fb 01 0f 87 ee 02 b1 01 83 e3 01 0f 85 4d ff ff ff c6 05 9a f9 82 03 01 90 48 c7 c7 20 7a 62 a0 e8 3e 05 2a ff 90 <0f> 0b 90 90 e9 2f ff ff ff 48 89 df e8 8c 68 a6 ff e9 b6 fe ff ff All code ======== 0: f9 stc 1: 82 (bad) 2: 03 80 fb 01 0f 87 add -0x78f0fe05(%rax),%eax 8: ee out %al,(%dx) 9: 02 b1 01 83 e3 01 add 0x1e38301(%rcx),%dh f: 0f 85 4d ff ff ff jne 0xffffffffffffff62 15: c6 05 9a f9 82 03 01 movb $0x1,0x382f99a(%rip) # 0x382f9b6 1c: 90 nop 1d: 48 c7 c7 20 7a 62 a0 mov $0xffffffffa0627a20,%rdi 24: e8 3e 05 2a ff call 0xffffffffff2a0567 29: 90 nop 2a:* 0f 0b ud2 <-- trapping instruction 2c: 90 nop 2d: 90 nop 2e: e9 2f ff ff ff jmp 0xffffffffffffff62 33: 48 89 df mov %rbx,%rdi 36: e8 8c 68 a6 ff call 0xffffffffffa668c7 3b: e9 b6 fe ff ff jmp 0xfffffffffffffef6 Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: 90 nop 3: 90 nop 4: e9 2f ff ff ff jmp 0xffffffffffffff38 9: 48 89 df mov %rbx,%rdi c: e8 8c 68 a6 ff call 0xffffffffffa6689d 11: e9 b6 fe ff ff jmp 0xfffffffffffffecc [ 457.026899][ T70] RSP: 0018:ffffc9000050fb98 EFLAGS: 00010282 [ 457.027393][ T70] RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffff9d91056f [ 457.027829][ T70] RDX: 0000000000000000 RSI: 0000000000000008 RDI: 0000000000000001 [ 457.028280][ T70] RBP: 0000000000000003 R08: 0000000000000000 R09: fffff520000a1f18 [ 457.028745][ T70] R10: ffffc9000050f8c7 R11: 205d303754202020 R12: ffff88800926a000 [ 457.029196][ T70] R13: ffff88800926adf8 R14: ffffc9000050fc98 R15: ffff88800926abc0 [ 457.029658][ T70] FS: 0000000000000000(0000) GS:ffff888035e00000(0000) knlGS:0000000000000000 [ 457.030170][ T70] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 457.030547][ T70] CR2: 00005557300460c8 CR3: 000000002df34002 CR4: 00000000001706f0 [ 457.031031][ T70] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 457.031451][ T70] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 457.031928][ T70] Call Trace: [ 457.032145][ T70] [ 457.032313][ T70] ? __warn (kernel/panic.c:677) [ 457.032552][ T70] ? refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) [ 457.032868][ T70] ? report_bug (lib/bug.c:201 lib/bug.c:219) [ 457.033135][ T70] ? vprintk_emit (kernel/printk/printk.c:2313) [ 457.033402][ T70] ? handle_bug (arch/x86/kernel/traps.c:238) [ 457.033646][ T70] ? exc_invalid_op (arch/x86/kernel/traps.c:259 (discriminator 1)) [ 457.033943][ T70] ? asm_exc_invalid_op (./arch/x86/include/asm/idtentry.h:568) [ 457.034224][ T70] ? desc_read (./arch/x86/include/asm/atomic64_64.h:20 ./include/linux/atomic/atomic-arch-fallback.h:2615 ./include/linux/atomic/atomic-long.h:79 ./include/linux/atomic/atomic-instrumented.h:3196 kernel/printk/printk_ringbuffer.c:534) [ 457.034465][ T70] ? refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) [ 457.034793][ T70] ? refcount_warn_saturate (lib/refcount.c:28 (discriminator 3)) [ 457.035115][ T70] br_sysfs_delbr (net/bridge/br_sysfs_br.c:1086) [ 457.035387][ T70] br_dev_delete (net/bridge/br_if.c:396) [ 457.035657][ T70] ? net_generic (./include/net/netns/generic.h:51) bareudp [ 457.035989][ T70] br_net_exit_batch_rtnl (net/bridge/br.c:369) [ 457.036312][ T70] cleanup_net (net/core/net_namespace.c:628 (discriminator 2)) [ 457.036566][ T70] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5719) [ 457.036918][ T70] ? __pfx_cleanup_net (net/core/net_namespace.c:581) [ 457.037187][ T70] ? lock_acquire (./include/trace/events/lock.h:24 kernel/locking/lockdep.c:5725) [ 457.037438][ T70] ? process_one_work (kernel/workqueue.c:2609) [ 457.037711][ T70] process_one_work (kernel/workqueue.c:2638) [ 457.037988][ T70] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:228) [ 457.038231][ T70] ? __pfx_process_one_work (kernel/workqueue.c:2542) [ 457.038547][ T70] ? assign_work (kernel/workqueue.c:1101) [ 457.038798][ T70] worker_thread (kernel/workqueue.c:2700 kernel/workqueue.c:2787) [ 457.039061][ T70] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4300 kernel/locking/lockdep.c:4359) [ 457.039437][ T70] ? __pfx_worker_thread (kernel/workqueue.c:2733) [ 457.039712][ T70] ? __pfx_worker_thread (kernel/workqueue.c:2733) [ 457.039997][ T70] kthread (kernel/kthread.c:388) [ 457.040216][ T70] ? __pfx_kthread (kernel/kthread.c:341) [ 457.040461][ T70] ret_from_fork (arch/x86/kernel/process.c:153) [ 457.040702][ T70] ? __pfx_kthread (kernel/kthread.c:341) [ 457.040950][ T70] ret_from_fork_asm (arch/x86/entry/entry_64.S:250) | [ 457.043977][ T70] ------------[ cut here ]------------ | [ 457.044282][ T70] sysfs group 'bridge' not found for kobject 'br0' | [ 457.044648][ T70] WARNING: CPU: 3 PID: 70 at fs/sysfs/group.c:282 sysfs_remove_group (fs/sysfs/group.c:282 (discriminator 1)) | [ 457.045141][ T70] Modules linked in: xt_HL amt cls_matchall ip6_gre gre act_mirred act_tunnel_key cls_flower bareudp ip6_udp_tunnel udp_tunnel mpls_iptunnel mpls_router cls_bpf sch_ingress xt_conntrack nf_conntrack nf_defrag_ipv4 nft_compat nf_tables libcrc32c nf_defrag_ipv6 [ 457.047214][ T70] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 457.047858][ T70] Workqueue: netns cleanup_net [ 457.048121][ T70] RIP: 0010:sysfs_remove_group (fs/sysfs/group.c:282 (discriminator 1)) [ 457.048458][ T70] Code: 89 d9 49 8b 14 24 48 b8 00 00 00 00 00 fc ff df 48 c1 e9 03 80 3c 01 00 75 45 48 8b 33 48 c7 c7 a0 a7 5c a0 e8 60 65 5e ff 90 <0f> 0b 90 90 48 83 c4 08 5b 5d 41 5c c3 cc cc cc cc e8 e9 c7 da ff All code ======== 0: 89 d9 mov %ebx,%ecx 2: 49 8b 14 24 mov (%r12),%rdx 6: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax d: fc ff df 10: 48 c1 e9 03 shr $0x3,%rcx 14: 80 3c 01 00 cmpb $0x0,(%rcx,%rax,1) 18: 75 45 jne 0x5f 1a: 48 8b 33 mov (%rbx),%rsi 1d: 48 c7 c7 a0 a7 5c a0 mov $0xffffffffa05ca7a0,%rdi 24: e8 60 65 5e ff call 0xffffffffff5e6589 29: 90 nop 2a:* 0f 0b ud2 <-- trapping instruction 2c: 90 nop 2d: 90 nop 2e: 48 83 c4 08 add $0x8,%rsp 32: 5b pop %rbx 33: 5d pop %rbp 34: 41 5c pop %r12 36: c3 ret 37: cc int3 38: cc int3 39: cc int3 3a: cc int3 3b: e8 e9 c7 da ff call 0xffffffffffdac829 Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: 90 nop 3: 90 nop 4: 48 83 c4 08 add $0x8,%rsp 8: 5b pop %rbx 9: 5d pop %rbp a: 41 5c pop %r12 c: c3 ret d: cc int3 e: cc int3 f: cc int3 10: cc int3 11: e8 e9 c7 da ff call 0xffffffffffdac7ff [ 457.049589][ T70] RSP: 0018:ffffc9000050fba0 EFLAGS: 00010282 [ 457.050049][ T70] RAX: 0000000000000000 RBX: ffffffffa09be220 RCX: ffffffff9d91056f [ 457.050504][ T70] RDX: 0000000000000000 RSI: 0000000000000008 RDI: 0000000000000001 [ 457.050932][ T70] RBP: 0000000000000000 R08: 0000000000000000 R09: fffff520000a1f19 [ 457.051356][ T70] R10: ffffc9000050f8cf R11: 205d303754202020 R12: ffff88800926a628 [ 457.051781][ T70] R13: ffff88800926adf8 R14: ffffc9000050fc98 R15: ffff88800926abc0 [ 457.052237][ T70] FS: 0000000000000000(0000) GS:ffff888035e00000(0000) knlGS:0000000000000000 [ 457.052743][ T70] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 457.053098][ T70] CR2: 00005557300460c8 CR3: 000000002df34002 CR4: 00000000001706f0 [ 457.053517][ T70] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 457.053943][ T70] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 457.054366][ T70] Call Trace: [ 457.054548][ T70] [ 457.054715][ T70] ? __warn (kernel/panic.c:677) [ 457.054969][ T70] ? console_trylock (kernel/printk/printk.c:2659 kernel/printk/printk.c:2654) [ 457.055253][ T70] ? sysfs_remove_group (fs/sysfs/group.c:282 (discriminator 1)) [ 457.055546][ T70] ? report_bug (lib/bug.c:201 lib/bug.c:219) [ 457.055808][ T70] ? handle_bug (arch/x86/kernel/traps.c:238) [ 457.056067][ T70] ? exc_invalid_op (arch/x86/kernel/traps.c:259 (discriminator 1)) [ 457.056347][ T70] ? asm_exc_invalid_op (./arch/x86/include/asm/idtentry.h:568) [ 457.056648][ T70] ? desc_read (./arch/x86/include/asm/atomic64_64.h:20 ./include/linux/atomic/atomic-arch-fallback.h:2615 ./include/linux/atomic/atomic-long.h:79 ./include/linux/atomic/atomic-instrumented.h:3196 kernel/printk/printk_ringbuffer.c:534) [ 457.056921][ T70] ? sysfs_remove_group (fs/sysfs/group.c:282 (discriminator 1)) [ 457.057218][ T70] br_dev_delete (net/bridge/br_if.c:396) [ 457.057486][ T70] ? net_generic (./include/net/netns/generic.h:51) bareudp [ 457.057797][ T70] br_net_exit_batch_rtnl (net/bridge/br.c:369) [ 457.058111][ T70] cleanup_net (net/core/net_namespace.c:628 (discriminator 2)) [ 457.058353][ T70] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5719) [ 457.058654][ T70] ? __pfx_cleanup_net (net/core/net_namespace.c:581) [ 457.058922][ T70] ? lock_acquire (./include/trace/events/lock.h:24 kernel/locking/lockdep.c:5725) [ 457.059175][ T70] ? process_one_work (kernel/workqueue.c:2609) [ 457.059452][ T70] process_one_work (kernel/workqueue.c:2638) [ 457.059717][ T70] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:228) [ 457.059979][ T70] ? __pfx_process_one_work (kernel/workqueue.c:2542) [ 457.060268][ T70] ? assign_work (kernel/workqueue.c:1101) [ 457.060515][ T70] worker_thread (kernel/workqueue.c:2700 kernel/workqueue.c:2787) [ 457.060770][ T70] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4300 kernel/locking/lockdep.c:4359) [ 457.061177][ T70] ? __pfx_worker_thread (kernel/workqueue.c:2733) [ 457.061475][ T70] ? __pfx_worker_thread (kernel/workqueue.c:2733) [ 457.061760][ T70] kthread (kernel/kthread.c:388) [ 457.061999][ T70] ? __pfx_kthread (kernel/kthread.c:341) [ 457.062256][ T70] ret_from_fork (arch/x86/kernel/process.c:153) [ 457.062494][ T70] ? __pfx_kthread (kernel/kthread.c:341) Finger prints: dump_stack_lvl:print_report:kasan_report:kobject_put refcount_warn_saturate:br_sysfs_delbr:br_dev_delete:br_net_exit_batch_rtnl sysfs_remove_group:br_dev_delete:br_net_exit_batch_rtnl:cleanup_net