====================================== | xx__-> echo $? | 0 | xx__-> [ 36.034069][ C3] BUG: spinlock bad magic on CPU#3, tc/301 | [ 36.034372][ C3] lock: noop_qdisc+0x240/0x300, .magic: 00000000, .owner: tc/301, .owner_cpu: 3 [ 36.034887][ C3] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 36.035217][ C3] Call Trace: [ 36.035332][ C3] [ 36.035432][ C3] dump_stack_lvl (lib/dump_stack.c:122) [ 36.035580][ C3] do_raw_spin_unlock (kernel/locking/spinlock_debug.c:100 kernel/locking/spinlock_debug.c:141) [ 36.035733][ C3] _raw_spin_unlock (./arch/x86/include/asm/preempt.h:94 ./include/linux/spinlock_api_smp.h:143 kernel/locking/spinlock.c:186) [ 36.035885][ C3] 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) [ 36.036022][ C3] handle_softirqs (kernel/softirq.c:554) [ 36.036158][ C3] ? 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) [ 36.036309][ C3] do_softirq (kernel/softirq.c:455 kernel/softirq.c:442) [ 36.036413][ C3] [ 36.036520][ C3] [ 36.036593][ C3] __local_bh_enable_ip (kernel/softirq.c:382) [ 36.036727][ C3] dev_deactivate_many (net/sched/sch_generic.c:1356) [ 36.036864][ C3] ? __pfx___lock_release (kernel/locking/lockdep.c:5411) [ 36.037017][ C3] dev_deactivate (./include/linux/list.h:111 ./include/linux/list.h:215 ./include/linux/list.h:229 net/sched/sch_generic.c:1398) [ 36.037151][ C3] ? __pfx_dev_deactivate (net/sched/sch_generic.c:1393) [ 36.037296][ C3] qdisc_graft (net/sched/sch_api.c:1137) [ 36.037434][ C3] ? qdisc_create (net/sched/sch_api.c:1257) [ 36.037571][ C3] ? __pfx_qdisc_graft (net/sched/sch_api.c:1105) [ 36.037732][ C3] ? __pfx_qdisc_create (net/sched/sch_api.c:1257) [ 36.037871][ C3] tc_modify_qdisc (net/sched/sch_api.c:1789) [ 36.038016][ C3] ? trace_contention_end (./include/trace/events/lock.h:122 (discriminator 52)) [ 36.038165][ C3] ? __pfx_tc_modify_qdisc (net/sched/sch_api.c:1604) [ 36.038307][ C3] ? __mutex_lock (./arch/x86/include/asm/preempt.h:94 kernel/locking/mutex.c:618 kernel/locking/mutex.c:752) [ 36.038444][ C3] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [ 36.038582][ C3] rtnetlink_rcv_msg (net/core/rtnetlink.c:6647) [ 36.038727][ C3] ? __pfx_rtnetlink_rcv_msg (net/core/rtnetlink.c:6541) [ 36.038876][ C3] ? 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) [ 36.039027][ C3] ? mark_lock (kernel/locking/lockdep.c:4655 (discriminator 3)) [ 36.039133][ C3] ? __lock_acquire (kernel/locking/lockdep.c:5142) [ 36.039271][ C3] netlink_rcv_skb (net/netlink/af_netlink.c:2550) [ 36.039411][ C3] ? __pfx_rtnetlink_rcv_msg (net/core/rtnetlink.c:6541) [ 36.039548][ C3] ? __pfx_netlink_rcv_skb (net/netlink/af_netlink.c:2527) [ 36.039687][ C3] ? netlink_deliver_tap (./include/linux/rcupdate.h:336 ./include/linux/rcupdate.h:869 net/netlink/af_netlink.c:340) [ 36.039824][ C3] ? 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) [ 36.039956][ C3] netlink_unicast (net/netlink/af_netlink.c:1331 net/netlink/af_netlink.c:1357) [ 36.040097][ C3] ? __pfx_netlink_unicast (net/netlink/af_netlink.c:1342) [ 36.040228][ C3] ? find_held_lock (kernel/locking/lockdep.c:5249) [ 36.040366][ C3] netlink_sendmsg (net/netlink/af_netlink.c:1901) [ 36.040500][ C3] ? __pfx_netlink_sendmsg (net/netlink/af_netlink.c:1820) [ 36.040635][ C3] ? __might_fault (mm/memory.c:6388 mm/memory.c:6381) [ 36.040771][ C3] ? __import_iovec (lib/iov_iter.c:1263 lib/iov_iter.c:1279) [ 36.040909][ C3] ____sys_sendmsg (net/socket.c:730 net/socket.c:745 net/socket.c:2597) [ 36.041045][ C3] ? __pfx_____sys_sendmsg (net/socket.c:2543) [ 36.041178][ C3] ? __pfx_copy_msghdr_from_user (net/socket.c:2523) [ 36.041345][ C3] ___sys_sendmsg (net/socket.c:2653) [ 36.041485][ C3] ? __pfx____sys_sendmsg (net/socket.c:2640) [ 36.041619][ C3] ? kfree (mm/slub.c:4583) [ 36.041724][ C3] ? ___sys_recvmsg (net/socket.c:2848) [ 36.041864][ C3] ? __pfx____sys_recvmsg (net/socket.c:2848) [ 36.041999][ C3] ? reacquire_held_locks (kernel/locking/lockdep.c:5284) [ 36.042135][ C3] ? do_user_addr_fault (./include/linux/rcupdate.h:326 ./include/linux/rcupdate.h:838 ./include/linux/mm.h:713 arch/x86/mm/fault.c:1340) [ 36.042272][ C3] ? __fget_light (./include/linux/atomic/atomic-arch-fallback.h:479 ./include/linux/atomic/atomic-instrumented.h:50 fs/file.c:1145) [ 36.042414][ C3] __sys_sendmsg (./include/linux/file.h:34 net/socket.c:2682) [ 36.042556][ C3] ? __pfx___sys_sendmsg (net/socket.c:2668) [ 36.042689][ C3] ? __pfx___up_read (kernel/locking/rwsem.c:1339) [ 36.042826][ C3] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 36.042963][ C3] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 36.043131][ C3] RIP: 0033:0x7fef36ef77b7 [ 36.043275][ C3] 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) [ 36.043764][ C3] RSP: 002b:00007fffda3f7bd8 EFLAGS: 00000246 ORIG_RAX: 000000000000002e [ 36.043969][ C3] RAX: ffffffffffffffda RBX: 0000000000000001 RCX: 00007fef36ef77b7 [ 36.044176][ C3] RDX: 0000000000000000 RSI: 00007fffda3f7c40 RDI: 0000000000000005 [ 36.044379][ C3] RBP: 000000000047d6a0 R08: 0000000000000014 R09: 0000000000000000 [ 36.044581][ C3] R10: 00007fef36db0708 R11: 0000000000000246 R12: 00007fffda407f00 Finger prints: do_raw_spin_unlock:_raw_spin_unlock:net_tx_action:handle_softirqs:do_softirq