====================================== | [ 24.566745][ T348] ================================================================== | [ 24.567086][ T348] 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) | [ 24.567413][ T348] Write of size 8 at addr 0000000000000000 by task ip/348 | [ 24.567680][ T348] [ 24.567795][ T348] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 24.567798][ T348] Call Trace: [ 24.567800][ T348] [ 24.567802][ T348] dump_stack_lvl (lib/dump_stack.c:123) [ 24.567811][ T348] ? try_to_grab_pending (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 kernel/workqueue.c:2072) [ 24.567814][ T348] kasan_report (mm/kasan/report.c:597) [ 24.567821][ T348] ? try_to_grab_pending (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 kernel/workqueue.c:2072) [ 24.567826][ T348] kasan_check_range (mm/kasan/generic.c:194 mm/kasan/generic.c:200) [ 24.567830][ T348] try_to_grab_pending (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 kernel/workqueue.c:2072) [ 24.567833][ T348] ? lock_acquire.part.0 (kernel/locking/lockdep.c:470 kernel/locking/lockdep.c:5870) [ 24.567842][ T348] __cancel_work (kernel/workqueue.c:2161 kernel/workqueue.c:4364) [ 24.567845][ T348] ? enable_delayed_work (kernel/workqueue.c:4359) [ 24.567848][ T348] ? 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) [ 24.567855][ T348] ? linkwatch_fire_event (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 net/core/link_watch.c:313) [ 24.567860][ T348] __cancel_work_sync (kernel/workqueue.c:4383) [ 24.567864][ T348] __dev_close_many (net/core/dev.c:1879 (discriminator 2) net/core/dev.c:1932 (discriminator 2)) [ 24.567872][ T348] ? netdev_notify_peers (net/core/dev.c:1891) [ 24.567877][ T348] ? __local_bh_enable_ip (./arch/x86/include/asm/irqflags.h:42 ./arch/x86/include/asm/irqflags.h:119 kernel/softirq.c:455) [ 24.567882][ T348] __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) [ 24.567887][ T348] ? netif_set_allmulti (net/core/dev.c:9890) [ 24.567892][ T348] netif_change_flags (net/core/dev.c:9989) [ 24.567897][ T348] dev_change_flags (./include/net/netdev_lock.h:30 ./include/net/netdev_lock.h:47 net/core/dev_api.c:69) [ 24.567901][ T348] cycle_netdev (drivers/net/vrf.c:1052) vrf [ 24.567908][ T348] vrf_add_slave (drivers/net/vrf.c:1083 drivers/net/vrf.c:1102) vrf [ 24.567914][ T348] do_set_master (./include/net/netdev_lock.h:30 ./include/net/netdev_lock.h:41 net/core/rtnetlink.c:2964) [ 24.567916][ T348] ? rtnl_configure_link (net/core/rtnetlink.c:3607) [ 24.567919][ T348] ? nla_strscpy (lib/nlattr.c:798) [ 24.567927][ T348] rtnl_newlink_create (net/core/rtnetlink.c:3855) [ 24.567931][ T348] ? rtnl_create_link (net/core/rtnetlink.c:3806) [ 24.567933][ T348] ? __dev_get_by_name (net/core/dev.c:865) [ 24.567936][ T348] ? rtnl_dev_get (net/core/rtnetlink.c:3419) [ 24.567940][ T348] ? rtnl_validate_mdb_entry_del_bulk (net/core/rtnetlink.c:3419) [ 24.567946][ T348] ? rtnl_newlink (net/core/rtnetlink.c:343 net/core/rtnetlink.c:4071) [ 24.567948][ T348] ? reacquire_held_locks (kernel/locking/lockdep.c:5385) [ 24.567954][ T348] __rtnl_newlink (net/core/rtnetlink.c:3957) [ 24.567960][ T348] rtnl_newlink (net/core/rtnetlink.c:351 net/core/rtnetlink.c:4073) [ 24.567965][ T348] ? __rtnl_newlink (net/core/rtnetlink.c:3963) [ 24.567972][ T348] ? rtnetlink_rcv_msg (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 net/core/rtnetlink.c:6956) [ 24.567974][ T348] ? __lock_release (kernel/locking/lockdep.c:5536) [ 24.567979][ T348] ? __rtnl_newlink (net/core/rtnetlink.c:3963) [ 24.567982][ T348] rtnetlink_rcv_msg (net/core/rtnetlink.c:6958) [ 24.567985][ T348] ? rtnl_port_fill (net/core/rtnetlink.c:6861) [ 24.567988][ T348] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 24.567995][ T348] netlink_rcv_skb (net/netlink/af_netlink.c:2550) [ 24.567999][ T348] ? rtnl_port_fill (net/core/rtnetlink.c:6861) [ 24.568003][ T348] ? netlink_ack (net/netlink/af_netlink.c:2527) [ 24.568009][ T348] ? netlink_deliver_tap (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 net/netlink/af_netlink.c:340) [ 24.568012][ T348] ? 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) [ 24.568016][ T348] netlink_unicast (net/netlink/af_netlink.c:1319 net/netlink/af_netlink.c:1344) [ 24.568020][ T348] ? netlink_attachskb (net/netlink/af_netlink.c:1329) [ 24.568024][ T348] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 24.568030][ T348] netlink_sendmsg (net/netlink/af_netlink.c:1894) [ 24.568034][ T348] ? netlink_unicast (net/netlink/af_netlink.c:1813) [ 24.568037][ T348] ? __import_iovec (lib/iov_iter.c:1346 lib/iov_iter.c:1361) [ 24.568044][ T348] ? netlink_unicast (net/netlink/af_netlink.c:1813) [ 24.568048][ T348] ____sys_sendmsg (net/socket.c:727 net/socket.c:742 net/socket.c:2630) [ 24.568054][ T348] ? get_timestamp.constprop.0 (net/socket.c:2576) [ 24.568057][ T348] ? __copy_msghdr (net/socket.c:2556) [ 24.568065][ T348] ___sys_sendmsg (net/socket.c:2686) [ 24.568070][ T348] ? copy_msghdr_from_user (net/socket.c:2673) [ 24.568074][ T348] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 24.568082][ T348] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 24.568086][ T348] ? validate_chain (kernel/locking/lockdep.c:3801 kernel/locking/lockdep.c:3821 kernel/locking/lockdep.c:3876) [ 24.568095][ T348] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 24.568100][ T348] __sys_sendmsg (net/socket.c:2716) [ 24.568103][ T348] ? __sys_sendmsg_sock (net/socket.c:2701) [ 24.568107][ T348] ? __rseq_handle_notify_resume (kernel/rseq.c:442) [ 24.568115][ T348] ? do_user_addr_fault (./include/linux/mmap_lock.h:396 arch/x86/mm/fault.c:1415) [ 24.568121][ T348] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 24.568126][ T348] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 24.568132][ T348] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 24.568135][ T348] RIP: 0033:0x7f365de761d7 [ 24.568144][ T348] Code: Unable to access opcode bytes at 0x7f365de761ad. Code starting with the faulting instruction =========================================== [ 24.568146][ T348] RSP: 002b:00007fff1300acf8 EFLAGS: 00000246 ORIG_RAX: 000000000000002e [ 24.568150][ T348] RAX: ffffffffffffffda RBX: 00007fff1300b420 RCX: 00007f365de761d7 [ 24.568152][ T348] RDX: 0000000000000000 RSI: 00007fff1300ad60 RDI: 0000000000000005 [ 24.568153][ T348] RBP: 0000000000000002 R08: 0000000000000054 R09: 0000000000000000 [ 24.568155][ T348] R10: 00007f365df04ac0 R11: 0000000000000246 R12: 00007fff1300b468 [ 24.568157][ T348] R13: 00000000691cc454 R14: 0000000000499600 R15: 00007fff1300ae58 | [ 24.587004][ T348] #PF: error_code(0x0002) - not-present page | [ 24.587255][ T348] PGD b9a9067 P4D b9a9067 PUD b9aa067 PMD 0 | [ 24.587526][ T348] Oops: Oops: 0002 [#1] SMP KASAN | [ 24.588167][ T348] Tainted: [B]=BAD_PAGE [ 24.588351][ T348] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 24.588736][ T348] 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) [ 24.589003][ T348] 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 [ 24.589856][ T348] RSP: 0018:ffffc90000576ff8 EFLAGS: 00010046 [ 24.590119][ T348] RAX: 0000000000000000 RBX: 0000000000000000 RCX: ffffffffb984090a [ 24.590445][ T348] RDX: fffffbfff7b4f2cd RSI: 0000000000000008 RDI: ffffffffbda79660 [ 24.590867][ T348] RBP: ffffc90000577060 R08: 0000000000000001 R09: fffffbfff7b4f2cc [ 24.591170][ T348] R10: ffffffffbda79667 R11: ffffc90000576ac0 R12: 0000000000000000 [ 24.591618][ T348] R13: 0000000000000282 R14: ffff888008129000 R15: dffffc0000000000 [ 24.591923][ T348] FS: 00007f365dca8800(0000) GS:ffff888078872000(0000) knlGS:0000000000000000 [ 24.592283][ T348] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 24.592667][ T348] CR2: 0000000000000000 CR3: 000000000ec71003 CR4: 0000000000772ef0 [ 24.592980][ T348] PKRU: 55555554 [ 24.593133][ T348] Call Trace: [ 24.593292][ T348] [ 24.593400][ T348] ? lock_acquire.part.0 (kernel/locking/lockdep.c:470 kernel/locking/lockdep.c:5870) [ 24.593620][ T348] __cancel_work (kernel/workqueue.c:2161 kernel/workqueue.c:4364) [ 24.593823][ T348] ? enable_delayed_work (kernel/workqueue.c:4359) [ 24.594031][ T348] ? 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) [ 24.594372][ T348] ? linkwatch_fire_event (./arch/x86/include/asm/bitops.h:136 ./include/asm-generic/bitops/instrumented-atomic.h:72 net/core/link_watch.c:313) [ 24.594589][ T348] __cancel_work_sync (kernel/workqueue.c:4383) [ 24.594788][ T348] __dev_close_many (net/core/dev.c:1879 (discriminator 2) net/core/dev.c:1932 (discriminator 2)) [ 24.594997][ T348] ? netdev_notify_peers (net/core/dev.c:1891) [ 24.595325][ T348] ? __local_bh_enable_ip (./arch/x86/include/asm/irqflags.h:42 ./arch/x86/include/asm/irqflags.h:119 kernel/softirq.c:455) [ 24.595540][ T348] __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) [ 24.595738][ T348] ? netif_set_allmulti (net/core/dev.c:9890) [ 24.595949][ T348] netif_change_flags (net/core/dev.c:9989) [ 24.596286][ T348] dev_change_flags (./include/net/netdev_lock.h:30 ./include/net/netdev_lock.h:47 net/core/dev_api.c:69) [ 24.596499][ T348] cycle_netdev (drivers/net/vrf.c:1052) vrf [ 24.596700][ T348] vrf_add_slave (drivers/net/vrf.c:1083 drivers/net/vrf.c:1102) vrf [ 24.596905][ T348] do_set_master (./include/net/netdev_lock.h:30 ./include/net/netdev_lock.h:41 net/core/rtnetlink.c:2964) [ 24.597229][ T348] ? rtnl_configure_link (net/core/rtnetlink.c:3607) [ 24.597444][ T348] ? nla_strscpy (lib/nlattr.c:798) [ 24.597647][ T348] rtnl_newlink_create (net/core/rtnetlink.c:3855) [ 24.597844][ T348] ? rtnl_create_link (net/core/rtnetlink.c:3806) [ 24.598173][ T348] ? __dev_get_by_name (net/core/dev.c:865) [ 24.598403][ T348] ? rtnl_dev_get (net/core/rtnetlink.c:3419) [ 24.598618][ T348] ? rtnl_validate_mdb_entry_del_bulk (net/core/rtnetlink.c:3419) [ 24.598869][ T348] ? rtnl_newlink (net/core/rtnetlink.c:343 net/core/rtnetlink.c:4071) [ 24.599205][ T348] ? reacquire_held_locks (kernel/locking/lockdep.c:5385) [ 24.599419][ T348] __rtnl_newlink (net/core/rtnetlink.c:3957) [ 24.599627][ T348] rtnl_newlink (net/core/rtnetlink.c:351 net/core/rtnetlink.c:4073) [ 24.599825][ T348] ? __rtnl_newlink (net/core/rtnetlink.c:3963) [ 24.600163][ T348] ? rtnetlink_rcv_msg (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 net/core/rtnetlink.c:6956) [ 24.600378][ T348] ? __lock_release (kernel/locking/lockdep.c:5536) [ 24.600590][ T348] ? __rtnl_newlink (net/core/rtnetlink.c:3963) [ 24.600787][ T348] rtnetlink_rcv_msg (net/core/rtnetlink.c:6958) [ 24.601123][ T348] ? rtnl_port_fill (net/core/rtnetlink.c:6861) [ 24.601346][ T348] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 24.601556][ T348] netlink_rcv_skb (net/netlink/af_netlink.c:2550) [ 24.601756][ T348] ? rtnl_port_fill (net/core/rtnetlink.c:6861) [ 24.602091][ T348] ? netlink_ack (net/netlink/af_netlink.c:2527) [ 24.602303][ T348] ? netlink_deliver_tap (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:897 net/netlink/af_netlink.c:340) [ 24.602519][ T348] ? 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) [ 24.602715][ T348] netlink_unicast (net/netlink/af_netlink.c:1319 net/netlink/af_netlink.c:1344) [ 24.603043][ T348] ? netlink_attachskb (net/netlink/af_netlink.c:1329) [ 24.603249][ T348] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 24.603462][ T348] netlink_sendmsg (net/netlink/af_netlink.c:1894) [ 24.603666][ T348] ? netlink_unicast (net/netlink/af_netlink.c:1813) [ 24.603989][ T348] ? __import_iovec (lib/iov_iter.c:1346 lib/iov_iter.c:1361) [ 24.604201][ T348] ? netlink_unicast (net/netlink/af_netlink.c:1813) [ 24.604409][ T348] ____sys_sendmsg (net/socket.c:727 net/socket.c:742 net/socket.c:2630) [ 24.604617][ T348] ? get_timestamp.constprop.0 (net/socket.c:2576) [ 24.604992][ T348] ? __copy_msghdr (net/socket.c:2556) [ 24.605202][ T348] ___sys_sendmsg (net/socket.c:2686) [ 24.605413][ T348] ? copy_msghdr_from_user (net/socket.c:2673) [ 24.605629][ T348] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 24.605955][ T348] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 24.606152][ T348] ? validate_chain (kernel/locking/lockdep.c:3801 kernel/locking/lockdep.c:3821 kernel/locking/lockdep.c:3876) [ 24.606364][ T348] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 24.606571][ T348] __sys_sendmsg (net/socket.c:2716) [ 24.606897][ T348] ? __sys_sendmsg_sock (net/socket.c:2701) [ 24.607097][ T348] ? __rseq_handle_notify_resume (kernel/rseq.c:442) [ 24.607390][ T348] ? do_user_addr_fault (./include/linux/mmap_lock.h:396 arch/x86/mm/fault.c:1415) [ 24.607596][ T348] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:751) [ 24.607924][ T348] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 24.608125][ T348] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 24.608403][ T348] RIP: 0033:0x7f365de761d7 [ 24.608754][ T348] Code: Unable to access opcode bytes at 0x7f365de761ad. Code starting with the faulting instruction =========================================== [ 24.609015][ T348] RSP: 002b:00007fff1300acf8 EFLAGS: 00000246 ORIG_RAX: 000000000000002e [ 24.609342][ T348] RAX: ffffffffffffffda RBX: 00007fff1300b420 RCX: 00007f365de761d7 [ 24.609770][ T348] RDX: 0000000000000000 RSI: 00007fff1300ad60 RDI: 0000000000000005 [ 24.610074][ T348] RBP: 0000000000000002 R08: 0000000000000054 R09: 0000000000000000 [ 24.610391][ T348] R10: 00007f365df04ac0 R11: 0000000000000246 R12: 00007fff1300b468 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