====================================== | [ 1340.479374][ T8882] rcu_scheduler_active = 2, debug_locks = 1 | [ 1340.479611][ T8882] no locks held by smcrouted/8882. | [ 1340.479769][ T8882] | [ 1340.479769][ T8882] stack backtrace: [ 1340.480242][ T8882] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 1340.480464][ T8882] Call Trace: [ 1340.480594][ T8882] <TASK> [ 1340.480689][ T8882] dump_stack_lvl (lib/dump_stack.c:123) [ 1340.480863][ T8882] lockdep_rcu_suspicious (kernel/locking/lockdep.c:6822) [ 1340.481027][ T8882] ip6mr_get_table (net/ipv6/ip6mr.c:132 (discriminator 11)) [ 1340.481190][ T8882] ip6_mroute_setsockopt (net/ipv6/ip6mr.c:1670) [ 1340.481355][ T8882] ? __pfx_ip6_mroute_setsockopt (net/ipv6/ip6mr.c:1658) [ 1340.481574][ T8882] ? __lock_release (kernel/locking/lockdep.c:5501) [ 1340.481765][ T8882] ? __might_fault (mm/memory.c:6716 mm/memory.c:6709) [ 1340.481931][ T8882] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [ 1340.482105][ T8882] ? __might_fault (mm/memory.c:6716 mm/memory.c:6709) [ 1340.482292][ T8882] ? lock_acquire (kernel/locking/lockdep.c:5798) [ 1340.482458][ T8882] ? __might_fault (mm/memory.c:6716 mm/memory.c:6709) [ 1340.482630][ T8882] ? __might_fault (mm/memory.c:6716 mm/memory.c:6709) [ 1340.482815][ T8882] do_ipv6_setsockopt (net/ipv6/ipv6_sockglue.c:415) [ 1340.482994][ T8882] ? __lock_release (kernel/locking/lockdep.c:5486) [ 1340.483165][ T8882] ? __pfx_do_ipv6_setsockopt (net/ipv6/ipv6_sockglue.c:395) [ 1340.483319][ T8882] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5790) [ 1340.483493][ T8882] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 1340.483660][ T8882] ? validate_chain (kernel/locking/lockdep.c:3797 kernel/locking/lockdep.c:3817 kernel/locking/lockdep.c:3872) [ 1340.483844][ T8882] ? is_bpf_text_address (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 kernel/bpf/core.c:769) [ 1340.484019][ T8882] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 1340.484185][ T8882] ? 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) [ 1340.484365][ T8882] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 1340.484502][ T8882] ? __lock_acquire (kernel/locking/lockdep.c:5202) [ 1340.484684][ T8882] ? find_held_lock (kernel/locking/lockdep.c:5315) [ 1340.484860][ T8882] ? ipv6_setsockopt (net/ipv6/ipv6_sockglue.c:996) [ 1340.485029][ T8882] ipv6_setsockopt (net/ipv6/ipv6_sockglue.c:996) [ 1340.485189][ T8882] rawv6_setsockopt (net/ipv6/raw.c:1054) [ 1340.485374][ T8882] ? __pfx_rawv6_setsockopt (net/ipv6/raw.c:1039) [ 1340.485537][ T8882] ? __lock_acquire (kernel/locking/lockdep.c:5202) [ 1340.485710][ T8882] ? kfree (mm/slub.c:4716) [ 1340.485863][ T8882] do_sock_setsockopt (net/socket.c:2336) [ 1340.486037][ T8882] ? __pfx_do_sock_setsockopt (net/socket.c:2305) [ 1340.486211][ T8882] ? __lock_release (kernel/locking/lockdep.c:5501) [ 1340.486387][ T8882] ? fd_install (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:962 fs/file.c:612) [ 1340.486564][ T8882] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [ 1340.486740][ T8882] ? fdget (./include/linux/atomic/atomic-arch-fallback.h:479 ./include/linux/atomic/atomic-instrumented.h:50 fs/file.c:1114 fs/file.c:1128) [ 1340.486882][ T8882] __sys_setsockopt (./include/linux/file.h:35 net/socket.c:2361) [ 1340.487052][ T8882] ? __pfx___sys_setsockopt (net/socket.c:2349) [ 1340.487215][ T8882] ? __sys_socket (net/socket.c:496 net/socket.c:1727) [ 1340.487372][ T8882] ? __pfx___sys_socket (net/socket.c:1714) [ 1340.487538][ T8882] ? do_user_addr_fault (./include/linux/mmap_lock.h:172 arch/x86/mm/fault.c:1417) [ 1340.487705][ T8882] __x64_sys_setsockopt (net/socket.c:2365) [ 1340.487876][ T8882] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 1340.488086][ T8882] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 1340.488257][ T8882] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 1340.488469][ T8882] RIP: 0033:0x7f5ed47bd91e [ 1340.488654][ T8882] Code: 0f 1f 40 00 48 8b 15 e1 94 0a 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b1 0f 1f 00 f3 0f 1e fa 49 89 ca b8 36 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 0a c3 66 0f 1f 84 00 00 00 00 00 48 8b 15 a9 All code ======== 0: 0f 1f 40 00 nopl 0x0(%rax) 4: 48 8b 15 e1 94 0a 00 mov 0xa94e1(%rip),%rdx # 0xa94ec b: f7 d8 neg %eax d: 64 89 02 mov %eax,%fs:(%rdx) 10: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax 17: eb b1 jmp 0xffffffffffffffca 19: 0f 1f 00 nopl (%rax) 1c: f3 0f 1e fa endbr64 20: 49 89 ca mov %rcx,%r10 23: b8 36 00 00 00 mov $0x36,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 0a ja 0x3c 32: c3 ret 33: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1) 3a: 00 00 3c: 48 rex.W 3d: 8b .byte 0x8b 3e: 15 .byte 0x15 3f: a9 .byte 0xa9 Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 0a ja 0x12 8: c3 ret 9: 66 0f 1f 84 00 00 00 nopw 0x0(%rax,%rax,1) 10: 00 00 12: 48 rex.W 13: 8b .byte 0x8b 14: 15 .byte 0x15 15: a9 .byte 0xa9 [ 1340.489274][ T8882] RSP: 002b:00007ffce145e548 EFLAGS: 00000246 ORIG_RAX: 0000000000000036 [ 1340.489539][ T8882] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f5ed47bd91e [ 1340.489807][ T8882] RDX: 00000000000000c8 RSI: 0000000000000029 RDI: 0000000000000008 [ 1340.490086][ T8882] RBP: 0000000000000008 R08: 0000000000000004 R09: 0000000000000000 [ 1340.490349][ T8882] R10: 00007ffce145e56c R11: 0000000000000246 R12: 0000000000000000 Finger prints: lockdep_rcu_suspicious:ip6mr_get_table:ip6_mroute_setsockopt:do_ipv6_setsockopt:ipv6_setsockopt