====================================== | [ 28.589799][ T251] netdevsim netdevsim821 eni821np1: set [0, 0] type 1 family 0 port 4789 - 0 | [ 28.600210][ T251] ip (251) used greatest stack depth: 24064 bytes left | [ 29.333769][ C1] BUG: spinlock bad magic on CPU#1, ip/262 | [ 29.333997][ C1] lock: noop_qdisc+0x240/0x300, .magic: 00000000, .owner: ip/262, .owner_cpu: 1 [ 29.334473][ C1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 29.334786][ C1] Call Trace: [ 29.334907][ C1] [ 29.334986][ C1] dump_stack_lvl (lib/dump_stack.c:122) [ 29.335133][ C1] do_raw_spin_unlock (kernel/locking/spinlock_debug.c:100 kernel/locking/spinlock_debug.c:141) [ 29.335279][ C1] _raw_spin_unlock (./arch/x86/include/asm/preempt.h:94 ./include/linux/spinlock_api_smp.h:143 kernel/locking/spinlock.c:186) [ 29.335427][ C1] net_tx_action (./include/net/sch_generic.h:226 ./include/net/sch_generic.h:217 ./include/net/pkt_sched.h:128 ./include/net/pkt_sched.h:124 net/core/dev.c:5323) [ 29.335571][ C1] handle_softirqs (kernel/softirq.c:554) [ 29.335712][ C1] ? dev_deactivate_many (./include/linux/bottom_half.h:33 ./include/linux/netdevice.h:4448 net/sched/sch_generic.c:571 net/sched/sch_generic.c:1363) [ 29.335870][ C1] do_softirq (kernel/softirq.c:455 kernel/softirq.c:442) [ 29.335972][ C1] [ 29.336043][ C1] [ 29.336111][ C1] __local_bh_enable_ip (kernel/softirq.c:382) [ 29.336250][ C1] dev_deactivate_many (net/sched/sch_generic.c:1356) [ 29.336394][ C1] __dev_close_many (net/core/dev.c:1547) [ 29.336534][ C1] ? __pfx___dev_close_many (net/core/dev.c:1522) [ 29.336675][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4273) [ 29.336819][ C1] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4299 kernel/locking/lockdep.c:4358) [ 29.336994][ C1] __dev_change_flags (./include/linux/list.h:111 ./include/linux/list.h:215 ./include/linux/list.h:229 net/core/dev.c:1571 net/core/dev.c:8836) [ 29.337134][ C1] ? __pfx___dev_change_flags (net/core/dev.c:8802) [ 29.337269][ C1] dev_change_flags (net/core/dev.c:8910) [ 29.337411][ C1] do_setlink (net/core/rtnetlink.c:2900) [ 29.337554][ C1] ? is_bpf_text_address (./include/linux/rcupdate.h:336 ./include/linux/rcupdate.h:869 ./kernel/bpf/core.c:769) [ 29.337694][ C1] ? __pfx_do_setlink (net/core/rtnetlink.c:2778) [ 29.337832][ C1] ? is_bpf_text_address (./kernel/bpf/core.c:772) [ 29.337970][ C1] ? kernel_text_address (kernel/extable.c:97 kernel/extable.c:94) [ 29.338109][ C1] ? __kernel_text_address (kernel/extable.c:79) [ 29.338243][ C1] ? unwind_get_return_address (arch/x86/kernel/unwind_orc.c:369 arch/x86/kernel/unwind_orc.c:364) [ 29.338385][ C1] ? __pfx_stack_trace_consume_entry (kernel/stacktrace.c:83) [ 29.338561][ C1] ? arch_stack_walk (arch/x86/kernel/stacktrace.c:26) [ 29.338702][ C1] ? stack_trace_save (kernel/stacktrace.c:123) [ 29.338837][ C1] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 29.338972][ C1] ? stack_depot_save_flags (lib/stackdepot.c:609) [ 29.339112][ C1] ? mark_lock (kernel/locking/lockdep.c:4655 (discriminator 3)) [ 29.339216][ C1] ? kasan_save_stack (mm/kasan/common.c:49) [ 29.339351][ C1] ? kasan_save_stack (mm/kasan/common.c:48) [ 29.339519][ C1] ? kasan_save_track (./arch/x86/include/asm/current.h:49 mm/kasan/common.c:60 mm/kasan/common.c:69) [ 29.339669][ C1] ? __kasan_kmalloc (mm/kasan/common.c:391) [ 29.339810][ C1] ? rtnl_newlink (./include/linux/slab.h:681 net/core/rtnetlink.c:3739) [ 29.339949][ C1] ? rtnetlink_rcv_msg (net/core/rtnetlink.c:6647) [ 29.340082][ C1] ? netlink_rcv_skb (net/netlink/af_netlink.c:2550) [ 29.340222][ C1] ? netlink_unicast (net/netlink/af_netlink.c:1329 net/netlink/af_netlink.c:1357) [ 29.340362][ C1] ? __nla_validate_parse (./include/net/netlink.h:1267 (discriminator 1) lib/nlattr.c:622 (discriminator 1)) [ 29.340502][ C1] ? ____sys_sendmsg (net/socket.c:730 net/socket.c:745 net/socket.c:2597) [ 29.340646][ C1] ? ___sys_sendmsg (net/socket.c:2653) [ 29.340786][ C1] __rtnl_newlink (net/core/rtnetlink.c:3696) [ 29.340925][ C1] ? 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:227) [ 29.341079][ C1] ? __pfx___rtnl_newlink (net/core/rtnetlink.c:3557) [ 29.341221][ C1] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4299 kernel/locking/lockdep.c:4358) [ 29.341398][ C1] ? __create_object (mm/kmemleak.c:751) [ 29.341545][ C1] ? trace_kmalloc (./include/trace/events/kmem.h:54 (discriminator 52)) [ 29.341696][ C1] rtnl_newlink (net/core/rtnetlink.c:3744) [ 29.341807][ C1] rtnetlink_rcv_msg (net/core/rtnetlink.c:6647) [ 29.341946][ C1] ? __pfx_rtnetlink_rcv_msg (net/core/rtnetlink.c:6541) [ 29.342087][ C1] ? 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:227) [ 29.342228][ C1] ? mark_lock (kernel/locking/lockdep.c:4655 (discriminator 3)) [ 29.342345][ C1] ? __lock_acquire (kernel/locking/lockdep.c:5142) [ 29.342487][ C1] netlink_rcv_skb (net/netlink/af_netlink.c:2550) [ 29.342624][ C1] ? __pfx_rtnetlink_rcv_msg (net/core/rtnetlink.c:6541) [ 29.342768][ C1] ? __pfx_netlink_rcv_skb (net/netlink/af_netlink.c:2527) [ 29.342916][ C1] ? netlink_deliver_tap (./include/linux/rcupdate.h:336 ./include/linux/rcupdate.h:869 net/netlink/af_netlink.c:340) [ 29.343073][ C1] ? netlink_deliver_tap (./include/linux/rcupdate.h:336 ./include/linux/rcupdate.h:869 ./include/net/netns/generic.h:48 net/netlink/af_netlink.c:333) [ 29.343226][ C1] netlink_unicast (net/netlink/af_netlink.c:1331 net/netlink/af_netlink.c:1357) [ 29.343381][ C1] ? __pfx_netlink_unicast (net/netlink/af_netlink.c:1342) [ 29.343533][ C1] ? find_held_lock (kernel/locking/lockdep.c:5249) [ 29.343686][ C1] netlink_sendmsg (net/netlink/af_netlink.c:1901) [ 29.343839][ C1] ? __pfx_netlink_sendmsg (net/netlink/af_netlink.c:1820) [ 29.343992][ C1] ? __might_fault (mm/memory.c:6388 mm/memory.c:6381) [ 29.344143][ C1] ? __import_iovec (lib/iov_iter.c:1263 lib/iov_iter.c:1279) [ 29.344300][ C1] ____sys_sendmsg (net/socket.c:730 net/socket.c:745 net/socket.c:2597) [ 29.344452][ C1] ? __pfx_____sys_sendmsg (net/socket.c:2543) [ 29.344586][ C1] ? __pfx_copy_msghdr_from_user (net/socket.c:2523) [ 29.344753][ C1] ? __pfx_validate_chain (kernel/locking/lockdep.c:3824) [ 29.344898][ C1] ___sys_sendmsg (net/socket.c:2653) [ 29.345036][ C1] ? __pfx____sys_sendmsg (net/socket.c:2640) [ 29.345177][ C1] ? find_held_lock (kernel/locking/lockdep.c:5249) [ 29.345315][ C1] ? __lock_release (kernel/locking/lockdep.c:5435) [ 29.345453][ C1] ? __debug_check_no_obj_freed (lib/debugobjects.c:1001) [ 29.345626][ C1] ? __pfx___lock_release (kernel/locking/lockdep.c:5411) [ 29.345761][ C1] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [ 29.345898][ C1] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4299 kernel/locking/lockdep.c:4358) [ 29.346066][ C1] ? __fget_light (./include/linux/atomic/atomic-arch-fallback.h:479 ./include/linux/atomic/atomic-instrumented.h:50 fs/file.c:1145) [ 29.346210][ C1] __sys_sendmsg (./include/linux/file.h:34 net/socket.c:2682) [ 29.346345][ C1] ? __pfx___sys_sendmsg (net/socket.c:2668) [ 29.346495][ C1] ? __virt_addr_valid (./arch/x86/include/asm/preempt.h:94 ./include/linux/rcupdate.h:953 ./include/linux/mmzone.h:2034 arch/x86/mm/physaddr.c:65) [ 29.346657][ C1] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 29.346809][ C1] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 29.346995][ C1] RIP: 0033:0x7fa85a76f7b7 [ 29.347157][ C1] Code: 0a 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b9 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 2e 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 89 54 24 1c 48 89 74 24 10 All code ======== 0: 0a 00 or (%rax),%al 2: f7 d8 neg %eax 4: 64 89 02 mov %eax,%fs:(%rdx) 7: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax e: eb b9 jmp 0xffffffffffffffc9 10: 0f 1f 00 nopl (%rax) 13: f3 0f 1e fa endbr64 17: 64 8b 04 25 18 00 00 mov %fs:0x18,%eax 1e: 00 1f: 85 c0 test %eax,%eax 21: 75 10 jne 0x33 23: b8 2e 00 00 00 mov $0x2e,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 51 ja 0x83 32: c3 ret 33: 48 83 ec 28 sub $0x28,%rsp 37: 89 54 24 1c mov %edx,0x1c(%rsp) 3b: 48 89 74 24 10 mov %rsi,0x10(%rsp) Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 51 ja 0x59 8: c3 ret 9: 48 83 ec 28 sub $0x28,%rsp d: 89 54 24 1c mov %edx,0x1c(%rsp) 11: 48 89 74 24 10 mov %rsi,0x10(%rsp) [ 29.347653][ C1] RSP: 002b:00007ffde8a50248 EFLAGS: 00000246 ORIG_RAX: 000000000000002e [ 29.347859][ C1] RAX: ffffffffffffffda RBX: 00007ffde8a50970 RCX: 00007fa85a76f7b7 [ 29.348065][ C1] RDX: 0000000000000000 RSI: 00007ffde8a502b0 RDI: 0000000000000005 [ 29.348265][ C1] RBP: 0000000000000003 R08: 0000000000000003 R09: 0000000000000078 [ 29.348480][ C1] R10: 00007fa85a62def8 R11: 0000000000000246 R12: 0000000000000003 Finger prints: do_raw_spin_unlock:_raw_spin_unlock:net_tx_action:handle_softirqs:do_softirq