====================================== | [ 23.319293][ T352] ================================================================== | [ 23.319685][ T352] BUG: KASAN: null-ptr-deref in try_to_grab_pending (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 kernel/workqueue.c:2072) | [ 23.320048][ T352] Write of size 8 at addr 0000000000000000 by task ip/352 | [ 23.320348][ T352] [ 23.320475][ T352] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 23.320477][ T352] Call Trace: [ 23.320479][ T352] [ 23.320481][ T352] dump_stack_lvl (lib/dump_stack.c:123) [ 23.320488][ T352] ? try_to_grab_pending (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 kernel/workqueue.c:2072) [ 23.320492][ T352] kasan_report (mm/kasan/report.c:597) [ 23.320497][ T352] ? try_to_grab_pending (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 kernel/workqueue.c:2072) [ 23.320502][ T352] kasan_check_range (mm/kasan/generic.c:194 mm/kasan/generic.c:200) [ 23.320506][ T352] try_to_grab_pending (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 kernel/workqueue.c:2072) [ 23.320508][ T352] ? lock_acquire.part.0 (kernel/locking/lockdep.c:470 kernel/locking/lockdep.c:5870) [ 23.320515][ T352] __cancel_work (kernel/workqueue.c:2161 kernel/workqueue.c:4364) [ 23.320518][ T352] ? enable_delayed_work (kernel/workqueue.c:4359) [ 23.320522][ T352] ? linkwatch_urgent_event (./arch/x86/include/asm/bitops.h:202 ./arch/x86/include/asm/bitops.h:232 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 ./include/linux/netdevice.h:4040 net/core/link_watch.c:111) [ 23.320528][ T352] ? linkwatch_fire_event (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 net/core/link_watch.c:313) [ 23.320532][ T352] __cancel_work_sync (kernel/workqueue.c:4383) [ 23.320536][ T352] __dev_close_many (net/core/dev.c:1879 (discriminator 2) net/core/dev.c:1932 (discriminator 2)) [ 23.320542][ T352] ? netdev_notify_peers (net/core/dev.c:1891) [ 23.320547][ T352] ? __local_bh_enable_ip (./arch/x86/include/asm/irqflags.h:42 ./arch/x86/include/asm/irqflags.h:119 kernel/softirq.c:455) [ 23.320551][ T352] __dev_change_flags (./include/linux/list.h:119 ./include/linux/list.h:223 ./include/linux/list.h:237 net/core/dev.c:1945 net/core/dev.c:9924) [ 23.320555][ T352] ? netif_set_allmulti (net/core/dev.c:9890) [ 23.320560][ T352] netif_change_flags (net/core/dev.c:9989) [ 23.320565][ T352] dev_change_flags (./include/net/netdev_lock.h:30 ./include/net/netdev_lock.h:47 net/core/dev_api.c:69) [ 23.320568][ T352] cycle_netdev (drivers/net/vrf.c:1052) vrf [ 23.320575][ T352] vrf_add_slave (drivers/net/vrf.c:1083 drivers/net/vrf.c:1102) vrf [ 23.320581][ T352] do_set_master (./include/net/netdev_lock.h:30 ./include/net/netdev_lock.h:41 net/core/rtnetlink.c:2964) [ 23.320584][ T352] ? rtnl_configure_link (net/core/rtnetlink.c:3607) [ 23.320586][ T352] ? nla_strscpy (lib/nlattr.c:798) [ 23.320592][ T352] rtnl_newlink_create (net/core/rtnetlink.c:3855) [ 23.320596][ T352] ? rtnl_create_link (net/core/rtnetlink.c:3806) [ 23.320599][ T352] ? __dev_get_by_name (net/core/dev.c:865) [ 23.320601][ T352] ? rtnl_dev_get (net/core/rtnetlink.c:3419) [ 23.320606][ T352] ? rtnl_validate_mdb_entry_del_bulk (net/core/rtnetlink.c:3419) [ 23.320612][ T352] ? rtnl_newlink (net/core/rtnetlink.c:343 net/core/rtnetlink.c:4071) [ 23.320614][ T352] ? reacquire_held_locks (kernel/locking/lockdep.c:5385) [ 23.320619][ T352] __rtnl_newlink (net/core/rtnetlink.c:3957) [ 23.320626][ T352] rtnl_newlink (net/core/rtnetlink.c:351 net/core/rtnetlink.c:4073) [ 23.320631][ T352] ? __rtnl_newlink (net/core/rtnetlink.c:3963) [ 23.320638][ T352] ? rtnetlink_rcv_msg (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 net/core/rtnetlink.c:6956) [ 23.320640][ T352] ? __lock_release (kernel/locking/lockdep.c:5536) [ 23.320645][ T352] ? __rtnl_newlink (net/core/rtnetlink.c:3963) [ 23.320648][ T352] rtnetlink_rcv_msg (net/core/rtnetlink.c:6958) [ 23.320652][ T352] ? rtnl_port_fill (net/core/rtnetlink.c:6861) [ 23.320654][ T352] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 23.320662][ T352] netlink_rcv_skb (net/netlink/af_netlink.c:2550) [ 23.320665][ T352] ? rtnl_port_fill (net/core/rtnetlink.c:6861) [ 23.320669][ T352] ? netlink_ack (net/netlink/af_netlink.c:2527) [ 23.320675][ T352] ? netlink_deliver_tap (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 net/netlink/af_netlink.c:340) [ 23.320678][ T352] ? netlink_deliver_tap (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 ./include/net/netns/generic.h:48 net/netlink/af_netlink.c:333) [ 23.320682][ T352] netlink_unicast (net/netlink/af_netlink.c:1319 net/netlink/af_netlink.c:1344) [ 23.320686][ T352] ? netlink_attachskb (net/netlink/af_netlink.c:1329) [ 23.320690][ T352] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 23.320695][ T352] netlink_sendmsg (net/netlink/af_netlink.c:1894) [ 23.320700][ T352] ? netlink_unicast (net/netlink/af_netlink.c:1813) [ 23.320704][ T352] ? __import_iovec (lib/iov_iter.c:1346 lib/iov_iter.c:1361) [ 23.320708][ T352] ? netlink_unicast (net/netlink/af_netlink.c:1813) [ 23.320712][ T352] ____sys_sendmsg (net/socket.c:727 net/socket.c:742 net/socket.c:2630) [ 23.320716][ T352] ? get_timestamp.constprop.0 (net/socket.c:2576) [ 23.320719][ T352] ? __copy_msghdr (net/socket.c:2556) [ 23.320727][ T352] ___sys_sendmsg (net/socket.c:2686) [ 23.320731][ T352] ? copy_msghdr_from_user (net/socket.c:2673) [ 23.320735][ T352] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 23.320742][ T352] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 23.320745][ T352] ? validate_chain (kernel/locking/lockdep.c:3801 kernel/locking/lockdep.c:3821 kernel/locking/lockdep.c:3876) [ 23.320754][ T352] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 23.320759][ T352] __sys_sendmsg (net/socket.c:2716) [ 23.320763][ T352] ? __sys_sendmsg_sock (net/socket.c:2701) [ 23.320766][ T352] ? __rseq_handle_notify_resume (kernel/rseq.c:442) [ 23.320774][ T352] ? do_user_addr_fault (./include/linux/mmap_lock.h:396 arch/x86/mm/fault.c:1415) [ 23.320779][ T352] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 23.320783][ T352] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 23.320789][ T352] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 23.320793][ T352] RIP: 0033:0x7f4055c3f1d7 [ 23.320801][ T352] Code: Unable to access opcode bytes at 0x7f4055c3f1ad. Code starting with the faulting instruction =========================================== [ 23.320803][ T352] RSP: 002b:00007ffec3aea3f8 EFLAGS: 00000246 ORIG_RAX: 000000000000002e [ 23.320806][ T352] RAX: ffffffffffffffda RBX: 00007ffec3aeab20 RCX: 00007f4055c3f1d7 [ 23.320809][ T352] RDX: 0000000000000000 RSI: 00007ffec3aea460 RDI: 0000000000000005 [ 23.320811][ T352] RBP: 0000000000000002 R08: 0000000000000054 R09: 0000000000000000 [ 23.320812][ T352] R10: 00007f4055ccdac0 R11: 0000000000000246 R12: 00007ffec3aeab68 [ 23.320814][ T352] R13: 00000000691cc653 R14: 0000000000499600 R15: 00007ffec3aea558 | [ 23.341155][ T352] #PF: error_code(0x0002) - not-present page | [ 23.341440][ T352] PGD c8b5067 P4D c8b5067 PUD a116067 PMD 0 | [ 23.341723][ T352] Oops: Oops: 0002 [#1] SMP KASAN | [ 23.342402][ T352] Tainted: [B]=BAD_PAGE [ 23.342579][ T352] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 23.342857][ T352] RIP: 0010:try_to_grab_pending (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 kernel/workqueue.c:2072) [ 23.343143][ T352] Code: 00 41 89 c0 b8 01 00 00 00 45 85 c0 74 0f 48 83 c4 10 5b 5d 41 5c 41 5d 41 5e 41 5f c3 be 08 00 00 00 48 89 df e8 7f 7f 81 00 48 0f ba 2b 00 72 11 48 83 c4 10 31 c0 5b 5d 41 5c 41 5d 41 5e All code ======== 0: 00 41 89 add %al,-0x77(%rcx) 3: c0 b8 01 00 00 00 45 sarb $0x45,0x1(%rax) a: 85 c0 test %eax,%eax c: 74 0f je 0x1d e: 48 83 c4 10 add $0x10,%rsp 12: 5b pop %rbx 13: 5d pop %rbp 14: 41 5c pop %r12 16: 41 5d pop %r13 18: 41 5e pop %r14 1a: 41 5f pop %r15 1c: c3 ret 1d: be 08 00 00 00 mov $0x8,%esi 22: 48 89 df mov %rbx,%rdi 25: e8 7f 7f 81 00 call 0x817fa9 2a:* f0 48 0f ba 2b 00 lock btsq $0x0,(%rbx) <-- trapping instruction 30: 72 11 jb 0x43 32: 48 83 c4 10 add $0x10,%rsp 36: 31 c0 xor %eax,%eax 38: 5b pop %rbx 39: 5d pop %rbp 3a: 41 5c pop %r12 3c: 41 5d pop %r13 3e: 41 5e pop %r14 Code starting with the faulting instruction =========================================== 0: f0 48 0f ba 2b 00 lock btsq $0x0,(%rbx) 6: 72 11 jb 0x19 8: 48 83 c4 10 add $0x10,%rsp c: 31 c0 xor %eax,%eax e: 5b pop %rbx f: 5d pop %rbp 10: 41 5c pop %r12 12: 41 5d pop %r13 14: 41 5e pop %r14 [ 23.343940][ T352] RSP: 0000:ffffc90000756ff8 EFLAGS: 00010046 [ 23.344227][ T352] RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffff93e4090a [ 23.344564][ T352] RDX: fffffbfff300f2cd RSI: 0000000000000008 RDI: ffffffff98079660 [ 23.344900][ T352] RBP: ffffc90000757060 R08: 0000000000000001 R09: fffffbfff300f2cc [ 23.345238][ T352] R10: ffffffff98079667 R11: ffffc90000756ac0 R12: 0000000000000000 [ 23.345576][ T352] R13: 0000000000000282 R14: ffff88800bf64000 R15: dffffc0000000000 [ 23.345913][ T352] FS: 00007f4055a71800(0000) GS:ffff888098772000(0000) knlGS:0000000000000000 [ 23.346303][ T352] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 23.346590][ T352] CR2: 0000000000000000 CR3: 000000000def9006 CR4: 0000000000772ef0 [ 23.346929][ T352] PKRU: 55555554 [ 23.347098][ T352] Call Trace: [ 23.347266][ T352] [ 23.347380][ T352] ? lock_acquire.part.0 (kernel/locking/lockdep.c:470 kernel/locking/lockdep.c:5870) [ 23.347609][ T352] __cancel_work (kernel/workqueue.c:2161 kernel/workqueue.c:4364) [ 23.347833][ T352] ? enable_delayed_work (kernel/workqueue.c:4359) [ 23.348058][ T352] ? linkwatch_urgent_event (./arch/x86/include/asm/bitops.h:202 ./arch/x86/include/asm/bitops.h:232 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 ./include/linux/netdevice.h:4040 net/core/link_watch.c:111) [ 23.348282][ T352] ? linkwatch_fire_event (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 net/core/link_watch.c:313) [ 23.348505][ T352] __cancel_work_sync (kernel/workqueue.c:4383) [ 23.348728][ T352] __dev_close_many (net/core/dev.c:1879 (discriminator 2) net/core/dev.c:1932 (discriminator 2)) [ 23.348955][ T352] ? netdev_notify_peers (net/core/dev.c:1891) [ 23.349179][ T352] ? __local_bh_enable_ip (./arch/x86/include/asm/irqflags.h:42 ./arch/x86/include/asm/irqflags.h:119 kernel/softirq.c:455) [ 23.349403][ T352] __dev_change_flags (./include/linux/list.h:119 ./include/linux/list.h:223 ./include/linux/list.h:237 net/core/dev.c:1945 net/core/dev.c:9924) [ 23.349632][ T352] ? netif_set_allmulti (net/core/dev.c:9890) [ 23.349857][ T352] netif_change_flags (net/core/dev.c:9989) [ 23.350078][ T352] dev_change_flags (./include/net/netdev_lock.h:30 ./include/net/netdev_lock.h:47 net/core/dev_api.c:69) [ 23.350300][ T352] cycle_netdev (drivers/net/vrf.c:1052) vrf [ 23.350525][ T352] vrf_add_slave (drivers/net/vrf.c:1083 drivers/net/vrf.c:1102) vrf [ 23.350749][ T352] do_set_master (./include/net/netdev_lock.h:30 ./include/net/netdev_lock.h:41 net/core/rtnetlink.c:2964) [ 23.350971][ T352] ? rtnl_configure_link (net/core/rtnetlink.c:3607) [ 23.351192][ T352] ? nla_strscpy (lib/nlattr.c:798) [ 23.351420][ T352] rtnl_newlink_create (net/core/rtnetlink.c:3855) [ 23.351643][ T352] ? rtnl_create_link (net/core/rtnetlink.c:3806) [ 23.351864][ T352] ? __dev_get_by_name (net/core/dev.c:865) [ 23.352086][ T352] ? rtnl_dev_get (net/core/rtnetlink.c:3419) [ 23.352309][ T352] ? rtnl_validate_mdb_entry_del_bulk (net/core/rtnetlink.c:3419) [ 23.352587][ T352] ? rtnl_newlink (net/core/rtnetlink.c:343 net/core/rtnetlink.c:4071) [ 23.352805][ T352] ? reacquire_held_locks (kernel/locking/lockdep.c:5385) [ 23.353033][ T352] __rtnl_newlink (net/core/rtnetlink.c:3957) [ 23.353257][ T352] rtnl_newlink (net/core/rtnetlink.c:351 net/core/rtnetlink.c:4073) [ 23.353477][ T352] ? __rtnl_newlink (net/core/rtnetlink.c:3963) [ 23.353699][ T352] ? rtnetlink_rcv_msg (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 net/core/rtnetlink.c:6956) [ 23.353928][ T352] ? __lock_release (kernel/locking/lockdep.c:5536) [ 23.354154][ T352] ? __rtnl_newlink (net/core/rtnetlink.c:3963) [ 23.354375][ T352] rtnetlink_rcv_msg (net/core/rtnetlink.c:6958) [ 23.354595][ T352] ? rtnl_port_fill (net/core/rtnetlink.c:6861) [ 23.354819][ T352] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 23.355047][ T352] netlink_rcv_skb (net/netlink/af_netlink.c:2550) [ 23.355270][ T352] ? rtnl_port_fill (net/core/rtnetlink.c:6861) [ 23.355491][ T352] ? netlink_ack (net/netlink/af_netlink.c:2527) [ 23.355720][ T352] ? netlink_deliver_tap (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 net/netlink/af_netlink.c:340) [ 23.355940][ T352] ? netlink_deliver_tap (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 ./include/net/netns/generic.h:48 net/netlink/af_netlink.c:333) [ 23.356162][ T352] netlink_unicast (net/netlink/af_netlink.c:1319 net/netlink/af_netlink.c:1344) [ 23.356384][ T352] ? netlink_attachskb (net/netlink/af_netlink.c:1329) [ 23.356609][ T352] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 23.356829][ T352] netlink_sendmsg (net/netlink/af_netlink.c:1894) [ 23.357053][ T352] ? netlink_unicast (net/netlink/af_netlink.c:1813) [ 23.357278][ T352] ? __import_iovec (lib/iov_iter.c:1346 lib/iov_iter.c:1361) [ 23.357503][ T352] ? netlink_unicast (net/netlink/af_netlink.c:1813) [ 23.357722][ T352] ____sys_sendmsg (net/socket.c:727 net/socket.c:742 net/socket.c:2630) [ 23.357945][ T352] ? get_timestamp.constprop.0 (net/socket.c:2576) [ 23.358222][ T352] ? __copy_msghdr (net/socket.c:2556) [ 23.358448][ T352] ___sys_sendmsg (net/socket.c:2686) [ 23.358668][ T352] ? copy_msghdr_from_user (net/socket.c:2673) [ 23.358891][ T352] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 23.359235][ T352] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 23.359456][ T352] ? validate_chain (kernel/locking/lockdep.c:3801 kernel/locking/lockdep.c:3821 kernel/locking/lockdep.c:3876) [ 23.359682][ T352] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 23.359905][ T352] __sys_sendmsg (net/socket.c:2716) [ 23.360246][ T352] ? __sys_sendmsg_sock (net/socket.c:2701) [ 23.360470][ T352] ? __rseq_handle_notify_resume (kernel/rseq.c:442) [ 23.360750][ T352] ? do_user_addr_fault (./include/linux/mmap_lock.h:396 arch/x86/mm/fault.c:1415) [ 23.361091][ T352] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 23.361315][ T352] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 23.361541][ T352] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 23.361817][ T352] RIP: 0033:0x7f4055c3f1d7 [ 23.362177][ T352] Code: Unable to access opcode bytes at 0x7f4055c3f1ad. Code starting with the faulting instruction =========================================== [ 23.362464][ T352] RSP: 002b:00007ffec3aea3f8 EFLAGS: 00000246 ORIG_RAX: 000000000000002e [ 23.362798][ T352] RAX: ffffffffffffffda RBX: 00007ffec3aeab20 RCX: 00007f4055c3f1d7 [ 23.363250][ T352] RDX: 0000000000000000 RSI: 00007ffec3aea460 RDI: 0000000000000005 [ 23.363582][ T352] RBP: 0000000000000002 R08: 0000000000000054 R09: 0000000000000000 [ 23.363925][ T352] R10: 00007f4055ccdac0 R11: 0000000000000246 R12: 00007ffec3aeab68 Finger prints: try_to_grab_pending:__cancel_work:__cancel_work_sync:__dev_close_many:__dev_change_flags kasan_report:kasan_check_range:try_to_grab_pending:__cancel_work:__cancel_work_sync