====================================== | [ 28.426675][ T234] 1 lock held by icmps-accept_ip/234: | [ 28.426906][ T234] #0: ffff8880065a3798 (sk_lock-AF_INET){+.+.}-{0:0}, at: do_tcp_setsockopt (net/ipv4/tcp.c:3809) | [ 28.427354][ T234] | [ 28.427354][ T234] stack backtrace: [ 28.428047][ T234] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 28.428545][ T234] Call Trace: [ 28.428729][ T234] [ 28.428859][ T234] dump_stack_lvl (lib/dump_stack.c:123) [ 28.429117][ T234] lockdep_rcu_suspicious (kernel/locking/lockdep.c:6822) [ 28.429380][ T234] __tcp_ao_do_lookup.part.0 (net/ipv4/tcp_ao.c:208) [ 28.429624][ T234] tcp_ao_add_cmd (net/ipv4/tcp_ao.c:1698) [ 28.429871][ T234] ? __pfx_tcp_ao_add_cmd (net/ipv4/tcp_ao.c:1597) [ 28.430114][ T234] ? 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) [ 28.430367][ T234] ? __lock_acquire (kernel/locking/lockdep.c:5202) [ 28.430656][ T234] ? mark_held_locks (kernel/locking/lockdep.c:4321) [ 28.430911][ T234] ? do_tcp_setsockopt (net/ipv4/tcp.c:3943) [ 28.431150][ T234] do_tcp_setsockopt (net/ipv4/tcp.c:3943) [ 28.431396][ T234] ? __pfx_do_tcp_setsockopt (net/ipv4/tcp.c:3705) [ 28.431655][ T234] ? __lock_acquire (kernel/locking/lockdep.c:5202) [ 28.431924][ T234] ? find_held_lock (kernel/locking/lockdep.c:5315) [ 28.432180][ T234] ? __lock_release (kernel/locking/lockdep.c:5501) [ 28.432424][ T234] ? __fget_files (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 fs/file.c:1006) [ 28.432691][ T234] ? __pfx___lock_release (kernel/locking/lockdep.c:5477) [ 28.432928][ T234] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5790) [ 28.433174][ T234] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [ 28.433439][ T234] do_sock_setsockopt (net/socket.c:2334) [ 28.433690][ T234] ? __pfx_do_sock_setsockopt (net/socket.c:2303) [ 28.433957][ T234] ? fdget (fs/file.c:1121 fs/file.c:1128) [ 28.434155][ T234] __sys_setsockopt (./include/linux/file.h:35 net/socket.c:2359) [ 28.434400][ T234] ? __pfx___sys_setsockopt (net/socket.c:2347) [ 28.434663][ T234] ? __rseq_handle_notify_resume (kernel/rseq.c:316) [ 28.434954][ T234] ? do_user_addr_fault (./include/linux/mmap_lock.h:172 arch/x86/mm/fault.c:1417) [ 28.435222][ T234] ? __pfx___rseq_handle_notify_resume (kernel/rseq.c:316) [ 28.435536][ T234] __x64_sys_setsockopt (net/socket.c:2363) [ 28.435779][ T234] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 28.436094][ T234] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 28.436359][ T234] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 28.436659][ T234] RIP: 0033:0x7f42eaa4091e [ 28.436913][ T234] 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 [ 28.437823][ T234] RSP: 002b:00007ffcf3eb4db8 EFLAGS: 00000246 ORIG_RAX: 0000000000000036 [ 28.438219][ T234] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f42eaa4091e [ 28.438607][ T234] RDX: 0000000000000026 RSI: 0000000000000006 RDI: 0000000000000009 [ 28.438989][ T234] RBP: 0000000000000009 R08: 0000000000000120 R09: 0029383231736561 [ 28.439386][ T234] R10: 00007ffcf3eb4dc0 R11: 0000000000000246 R12: 00007ffcf3eb4ee0 [ 28.439812][ T234] R13: 0000000000000020 R14: 0000000000400000 R15: 0000000401fe000a | [ 28.655687][ T241] 1 lock held by icmps-accept_ip/241: | [ 28.655834][ T241] #0: ffff8880065a2a58 (sk_lock-AF_INET){+.+.}-{0:0}, at: do_tcp_getsockopt (net/ipv4/tcp.c:4631) | [ 28.656130][ T241] | [ 28.656130][ T241] stack backtrace: [ 28.656580][ T241] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 28.656917][ T241] Call Trace: [ 28.657076][ T241] [ 28.657200][ T241] dump_stack_lvl (lib/dump_stack.c:123) [ 28.657355][ T241] lockdep_rcu_suspicious (kernel/locking/lockdep.c:6822) [ 28.657522][ T241] tcp_ao_copy_mkts_to_user (net/ipv4/tcp_ao.c:2232 (discriminator 7)) [ 28.657671][ T241] ? mark_held_locks (kernel/locking/lockdep.c:4321) [ 28.657827][ T241] ? __pfx_tcp_ao_copy_mkts_to_user (net/ipv4/tcp_ao.c:2106) [ 28.658047][ T241] ? stack_depot_save_flags (lib/stackdepot.c:664) [ 28.658201][ T241] ? kasan_save_stack (mm/kasan/common.c:48) [ 28.658347][ T241] ? kasan_save_track (./arch/x86/include/asm/current.h:49 mm/kasan/common.c:60 mm/kasan/common.c:69) [ 28.658504][ T241] ? kasan_save_free_info (mm/kasan/generic.c:582) [ 28.658653][ T241] ? __kasan_slab_free (mm/kasan/common.c:271) [ 28.658797][ T241] ? kfree (mm/slub.c:4579 mm/slub.c:4727) [ 28.658908][ T241] ? tcp_ao_parse_crypto (./include/net/tcp_ao.h:67 net/ipv4/tcp_ao.c:1436) [ 28.659104][ T241] ? __lock_acquire (kernel/locking/lockdep.c:5202) [ 28.659263][ T241] ? lock_acquire.part.0 (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5827) [ 28.659423][ T241] ? find_held_lock (kernel/locking/lockdep.c:5315) [ 28.659586][ T241] ? __lock_release (kernel/locking/lockdep.c:5501) [ 28.659731][ T241] ? do_tcp_getsockopt (net/ipv4/tcp.c:4631) [ 28.659879][ T241] ? 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) [ 28.660056][ T241] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 28.660178][ T241] ? do_tcp_getsockopt (net/ipv4/tcp.c:4631) [ 28.660325][ T241] do_tcp_getsockopt (net/ipv4/tcp.c:4631) [ 28.660475][ T241] ? __pfx_do_tcp_getsockopt (net/ipv4/tcp.c:4300) [ 28.660638][ T241] ? tcp_ao_add_cmd (net/ipv4/tcp_ao.c:1737) [ 28.660802][ T241] ? release_sock (net/core/sock.c:3630) [ 28.660950][ T241] ? reacquire_held_locks (kernel/locking/lockdep.c:5350) [ 28.661125][ T241] ? release_sock (net/core/sock.c:3630) [ 28.661275][ T241] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 28.661425][ T241] ? validate_chain (kernel/locking/lockdep.c:3797 kernel/locking/lockdep.c:3817 kernel/locking/lockdep.c:3872) [ 28.661582][ T241] ? find_held_lock (kernel/locking/lockdep.c:5315) [ 28.661729][ T241] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 28.661877][ T241] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 28.662056][ T241] ? 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) [ 28.662294][ T241] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 28.662488][ T241] ? __lock_acquire (kernel/locking/lockdep.c:5202) [ 28.662750][ T241] ? find_held_lock (kernel/locking/lockdep.c:5315) [ 28.662915][ T241] ? __lock_release (kernel/locking/lockdep.c:5501) [ 28.663076][ T241] ? __might_fault (mm/memory.c:6705 mm/memory.c:6698) [ 28.663222][ T241] ? __pfx___lock_release (kernel/locking/lockdep.c:5477) [ 28.663367][ T241] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [ 28.663540][ T241] ? find_held_lock (kernel/locking/lockdep.c:5315) [ 28.663701][ T241] ? __might_fault (mm/memory.c:6705 mm/memory.c:6698) [ 28.663847][ T241] ? __might_fault (mm/memory.c:6705 mm/memory.c:6698) [ 28.664011][ T241] tcp_getsockopt (net/ipv4/tcp.c:4673 net/ipv4/tcp.c:4664) [ 28.664173][ T241] do_sock_getsockopt (net/socket.c:2396) [ 28.664325][ T241] ? __fget_files (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 fs/file.c:1006) [ 28.664489][ T241] ? __pfx_do_sock_getsockopt (net/socket.c:2374) [ 28.664645][ T241] ? fdget (fs/file.c:1121 fs/file.c:1128) [ 28.664763][ T241] __sys_getsockopt (./include/linux/file.h:35 net/socket.c:2428) [ 28.664917][ T241] ? __pfx___sys_getsockopt (net/socket.c:2415) [ 28.665098][ T241] ? __pfx_task_work_run (kernel/task_work.c:207) [ 28.665247][ T241] ? do_user_addr_fault (./include/linux/rcupdate.h:882 ./include/linux/mm.h:729 arch/x86/mm/fault.c:1340) [ 28.665396][ T241] __x64_sys_getsockopt (net/socket.c:2432) [ 28.665539][ T241] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 28.665736][ T241] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 28.665885][ T241] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 28.666090][ T241] RIP: 0033:0x7f42eaa4046e [ 28.666269][ T241] Code: 1f 44 00 00 48 8b 15 91 99 0a 00 f7 d8 64 89 02 b8 ff ff ff ff eb b8 0f 1f 44 00 00 f3 0f 1e fa 49 89 ca b8 37 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 59 All code ======== 0: 1f (bad) 1: 44 00 00 add %r8b,(%rax) 4: 48 8b 15 91 99 0a 00 mov 0xa9991(%rip),%rdx # 0xa999c b: f7 d8 neg %eax d: 64 89 02 mov %eax,%fs:(%rdx) 10: b8 ff ff ff ff mov $0xffffffff,%eax 15: eb b8 jmp 0xffffffffffffffcf 17: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 1c: f3 0f 1e fa endbr64 20: 49 89 ca mov %rcx,%r10 23: b8 37 00 00 00 mov $0x37,%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: 59 pop %rcx 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: 59 pop %rcx [ 28.666792][ T241] RSP: 002b:00007f42ea0eb9c8 EFLAGS: 00000246 ORIG_RAX: 0000000000000037 [ 28.667031][ T241] RAX: ffffffffffffffda RBX: 00007f42ea0ebc80 RCX: 00007f42eaa4046e [ 28.667252][ T241] RDX: 0000000000000029 RSI: 0000000000000006 RDI: 000000000000000a [ 28.667469][ T241] RBP: 00007f42ea0eb9e0 R08: 00007f42ea0eb9dc R09: 0000000000000064 [ 28.667689][ T241] R10: 00007f42ea0eb9e0 R11: 0000000000000246 R12: 000000000000000a [ 28.667907][ T241] R13: 0000000000000064 R14: 0000000000000020 R15: 0000000000000064 | [ 28.675824][ T241] 1 lock held by icmps-accept_ip/241: | [ 28.676017][ T241] #0: ffff8880065a2a58 (sk_lock-AF_INET){+.+.}-{0:0}, at: inet_stream_connect (net/ipv4/af_inet.c:748) | [ 28.676305][ T241] | [ 28.676305][ T241] stack backtrace: [ 28.676772][ T241] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 28.677163][ T241] Call Trace: [ 28.677281][ T241] [ 28.677362][ T241] dump_stack_lvl (lib/dump_stack.c:123) [ 28.677522][ T241] lockdep_rcu_suspicious (kernel/locking/lockdep.c:6822) [ 28.677682][ T241] tcp_ao_finish_connect (net/ipv4/tcp_ao.c:1183 (discriminator 7)) [ 28.677838][ T241] tcp_finish_connect (net/ipv4/tcp_input.c:6340) [ 28.678007][ T241] tcp_rcv_synsent_state_process (net/ipv4/tcp_input.c:6576) [ 28.678194][ T241] ? 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) [ 28.678348][ T241] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 28.678466][ T241] ? __pfx_tcp_rcv_synsent_state_process (net/ipv4/tcp_input.c:6455) [ 28.678654][ T241] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 28.678863][ T241] ? kvm_clock_get_cycles (./arch/x86/include/asm/preempt.h:94 arch/x86/kernel/kvmclock.c:80 arch/x86/kernel/kvmclock.c:86) [ 28.679032][ T241] ? ktime_get (kernel/time/timekeeping.c:195 (discriminator 4) kernel/time/timekeeping.c:395 (discriminator 4) kernel/time/timekeeping.c:403 (discriminator 4) kernel/time/timekeeping.c:850 (discriminator 4)) [ 28.679150][ T241] ? __lock_acquire (kernel/locking/lockdep.c:5202) [ 28.679308][ T241] tcp_rcv_state_process (net/ipv4/tcp_input.c:6796) [ 28.679476][ T241] ? __lock_release (kernel/locking/lockdep.c:5501) [ 28.679626][ T241] ? __release_sock (./include/net/sock.h:1121 net/core/sock.c:3077) [ 28.679780][ T241] ? __pfx_tcp_rcv_state_process (net/ipv4/tcp_input.c:6751) [ 28.679996][ T241] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 28.680126][ T241] tcp_v4_do_rcv (net/ipv4/tcp_ipv4.c:1945) [ 28.680286][ T241] __release_sock (./include/net/sock.h:1121 net/core/sock.c:3077) [ 28.680465][ T241] release_sock (net/core/sock.c:3633) [ 28.680618][ T241] inet_stream_connect (net/ipv4/af_inet.c:751) [ 28.680772][ T241] __sys_connect (net/socket.c:2071 net/socket.c:2088) [ 28.680926][ T241] ? __pfx___sys_connect (net/socket.c:2078) [ 28.681099][ T241] ? do_fcntl (fs/fcntl.c:473) [ 28.681215][ T241] ? __pfx_do_fcntl (fs/fcntl.c:443) [ 28.681372][ T241] ? __fget_files (fs/file.c:1009) [ 28.681540][ T241] __x64_sys_connect (net/socket.c:2095) [ 28.681704][ T241] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 28.681859][ T241] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 28.682084][ T241] RIP: 0033:0x7f42eaa4040b [ 28.682244][ T241] Code: 83 ec 18 89 54 24 0c 48 89 34 24 89 7c 24 08 e8 eb c7 f4 ff 8b 54 24 0c 48 8b 34 24 41 89 c0 8b 7c 24 08 b8 2a 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 35 44 89 c7 89 44 24 08 e8 41 c8 f4 ff 8b 44 All code ======== 0: 83 ec 18 sub $0x18,%esp 3: 89 54 24 0c mov %edx,0xc(%rsp) 7: 48 89 34 24 mov %rsi,(%rsp) b: 89 7c 24 08 mov %edi,0x8(%rsp) f: e8 eb c7 f4 ff call 0xfffffffffff4c7ff 14: 8b 54 24 0c mov 0xc(%rsp),%edx 18: 48 8b 34 24 mov (%rsp),%rsi 1c: 41 89 c0 mov %eax,%r8d 1f: 8b 7c 24 08 mov 0x8(%rsp),%edi 23: b8 2a 00 00 00 mov $0x2a,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 35 ja 0x67 32: 44 89 c7 mov %r8d,%edi 35: 89 44 24 08 mov %eax,0x8(%rsp) 39: e8 41 c8 f4 ff call 0xfffffffffff4c87f 3e: 8b .byte 0x8b 3f: 44 rex.R Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 35 ja 0x3d 8: 44 89 c7 mov %r8d,%edi b: 89 44 24 08 mov %eax,0x8(%rsp) f: e8 41 c8 f4 ff call 0xfffffffffff4c855 14: 8b .byte 0x8b 15: 44 rex.R [ 28.682768][ T241] RSP: 002b:00007f42ea0ebd80 EFLAGS: 00000293 ORIG_RAX: 000000000000002a [ 28.683012][ T241] RAX: ffffffffffffffda RBX: 0000000000000010 RCX: 00007f42eaa4040b [ 28.683241][ T241] RDX: 0000000000000010 RSI: 00007f42ea0ebe00 RDI: 000000000000000a [ 28.683485][ T241] RBP: 000000000000000a R08: 0000000000000000 R09: 0000000000414400 [ 28.683708][ T241] R10: 00007f42ea8f8598 R11: 0000000000000293 R12: 000000000040e1c0 Finger prints: lockdep_rcu_suspicious:tcp_ao_add_cmd:do_tcp_setsockopt:do_sock_setsockopt:__sys_setsockopt lockdep_rcu_suspicious:tcp_ao_finish_connect:tcp_finish_connect:tcp_rcv_synsent_state_process:tcp_rcv_state_process lockdep_rcu_suspicious:tcp_ao_copy_mkts_to_user:do_tcp_getsockopt:tcp_getsockopt:do_sock_getsockopt