Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

export-net: WARNING at lib/debugobjects.c:509 (debug_print_object()) #370

Closed
matttbe opened this issue Mar 8, 2023 · 3 comments
Closed
Labels

Comments

@matttbe
Copy link
Member

matttbe commented Mar 8, 2023

The CI just reported these issues when validating export-net

# 114 implicit EP                          creation[ ok ]
#                                          ID change is prevented[ ok ]
#                                          modif is allowed[ ok ]
[ 2609.211317][T10968] IPv6: ADDRCONF(NETDEV_CHANGE): ns2eth1: link becomes ready
[ 2609.221267][T10968] IPv6: ADDRCONF(NETDEV_CHANGE): ns1eth1: link becomes ready
[ 2611.090156][   T14] IPv6: ADDRCONF(NETDEV_CHANGE): ns1eth2: link becomes ready
[ 2611.224919][   T14] IPv6: ADDRCONF(NETDEV_CHANGE): ns2eth2: link becomes ready
[ 2613.004971][   T14] IPv6: ADDRCONF(NETDEV_CHANGE): ns1eth3: link becomes ready
[ 2613.240840][   T14] IPv6: ADDRCONF(NETDEV_CHANGE): ns2eth3: link becomes ready
[ 2614.928452][   T14] IPv6: ADDRCONF(NETDEV_CHANGE): ns1eth4: link becomes ready
[ 2615.272862][   T14] IPv6: ADDRCONF(NETDEV_CHANGE): ns2eth4: link becomes ready
# Created /tmp/tmp.MplPHvPeqA (size 4 KB) containing data sent by client
# Created /tmp/tmp.GHogNfm81g (size 4 KB) containing data sent by server
[ 2618.635143][    C1] ------------[ cut here ]------------
[ 2618.642955][    C1] ODEBUG: activate active (active state 1) object: 000000008e2baffe object type: rcu_head hint: 0x0
[ 2618.658197][ C1] WARNING: CPU: 1 PID: 12976 at lib/debugobjects.c:509 debug_print_object (lib/debugobjects.c:509) 
[ 2618.670728][    C1] Modules linked in: act_csum act_pedit cls_fw sch_ingress xt_mark xt_statistic xt_length xt_bpf sch_netem ipt_REJECT nft_compat nf_tables
[ 2618.688592][    C1] CPU: 1 PID: 12976 Comm: mptcp_connect Not tainted 6.2.0-g97911e374b86 #1
[ 2618.699026][    C1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014
[ 2618.710464][ C1] RIP: 0010:debug_print_object (lib/debugobjects.c:509) 
[ 2618.717779][ C1] Code: 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 aa 00 00 00 41 56 48 8b 14 dd e0 8b 69 b7 4c 89 ee 48 c7 c7 40 7f 69 b7 e8 9a 3f 01 ff <0f> 0b 58 83 05 f4 81 1e 03 01 48 83 c4 18 5b 5d 41 5c 41 5d 41 5e
All code
========
   0:	48 89 fa             	mov    %rdi,%rdx
   3:	48 c1 ea 03          	shr    $0x3,%rdx
   7:	80 3c 02 00          	cmpb   $0x0,(%rdx,%rax,1)
   b:	0f 85 aa 00 00 00    	jne    0xbb
  11:	41 56                	push   %r14
  13:	48 8b 14 dd e0 8b 69 	mov    -0x48967420(,%rbx,8),%rdx
  1a:	b7 
  1b:	4c 89 ee             	mov    %r13,%rsi
  1e:	48 c7 c7 40 7f 69 b7 	mov    $0xffffffffb7697f40,%rdi
  25:	e8 9a 3f 01 ff       	call   0xffffffffff013fc4
  2a:*	0f 0b                	ud2    		<-- trapping instruction
  2c:	58                   	pop    %rax
  2d:	83 05 f4 81 1e 03 01 	addl   $0x1,0x31e81f4(%rip)        # 0x31e8228
  34:	48 83 c4 18          	add    $0x18,%rsp
  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:	0f 0b                	ud2    
   2:	58                   	pop    %rax
   3:	83 05 f4 81 1e 03 01 	addl   $0x1,0x31e81f4(%rip)        # 0x31e81fe
   a:	48 83 c4 18          	add    $0x18,%rsp
   e:	5b                   	pop    %rbx
   f:	5d                   	pop    %rbp
  10:	41 5c                	pop    %r12
  12:	41 5d                	pop    %r13
  14:	41 5e                	pop    %r14
[ 2618.742224][    C1] RSP: 0018:ffffc900001b8428 EFLAGS: 00010282
[ 2618.748882][    C1] RAX: 0000000000000000 RBX: 0000000000000003 RCX: ffffffffb4aeefdf
[ 2618.763814][    C1] RDX: 0000000000000000 RSI: 0000000000000008 RDI: 0000000000000001
[ 2618.774056][    C1] RBP: 0000000000000001 R08: 0000000000000000 R09: ffffc900001b815f
[ 2618.784794][    C1] R10: fffff5200003702b R11: 0000000000000001 R12: ffffffffb74d5ea0
[ 2618.794110][    C1] R13: ffffffffb7698640 R14: 0000000000000000 R15: ffff88800b0b6fd8
[ 2618.802866][    C1] FS:  00007fb032bdc740(0000) GS:ffff88806d080000(0000) knlGS:0000000000000000
[ 2618.812456][    C1] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 2618.819943][    C1] CR2: 00007ffe27e6a7e8 CR3: 0000000007d26002 CR4: 0000000000170ee0
[ 2618.828907][    C1] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 2618.837813][    C1] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[ 2618.846439][    C1] Call Trace:
[ 2618.850335][    C1]  <IRQ>
[ 2618.853715][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4255) 
[ 2618.860323][ C1] debug_object_activate (lib/debugobjects.c:682) 
[ 2618.866239][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4237) 
[ 2618.871840][ C1] ? debug_object_destroy (lib/debugobjects.c:650) 
[ 2618.877752][ C1] ? tcp_v6_do_rcv (net/ipv6/tcp_ipv6.c:1201) 
[ 2618.883408][ C1] kvfree_call_rcu (kernel/rcu/rcu.h:190 (discriminator 1)) 
[ 2618.888811][ C1] ? cond_synchronize_rcu_full (kernel/rcu/tree.c:3291) 
[ 2618.895184][ C1] ? mptcp_sk_clone (net/mptcp/protocol.c:3125) 
[ 2618.900428][ C1] ? do_raw_spin_unlock (arch/x86/include/asm/atomic.h:29) 
[ 2618.906016][ C1] ? _raw_spin_unlock (arch/x86/include/asm/preempt.h:95) 
[ 2618.911760][ C1] subflow_syn_recv_sock (net/mptcp/subflow.c:911) 
[ 2618.917765][ C1] ? mptcp_subflow_fully_established (net/mptcp/subflow.c:753) 
[ 2618.924585][ C1] ? selinux_socket_sock_rcv_skb (security/selinux/hooks.c:5094) 
[ 2618.930854][ C1] ? selinux_sock_rcv_skb_compat (security/selinux/hooks.c:5071) 
[ 2618.937003][ C1] ? find_held_lock (kernel/locking/lockdep.c:5159) 
[ 2618.942004][ C1] ? __lock_release (kernel/locking/lockdep.c:5345) 
[ 2618.947207][ C1] ? sk_filter_trim_cap (include/linux/rcupdate.h:805) 
[ 2618.952830][ C1] ? lock_downgrade (kernel/locking/lockdep.c:5321) 
[ 2618.957761][ C1] tcp_check_req (net/ipv4/tcp_minisocks.c:808) 
[ 2618.962812][ C1] ? sk_filter_trim_cap (include/linux/rcupdate.h:807) 
[ 2618.967739][ C1] ? tcp_ca_openreq_child (net/ipv4/tcp_minisocks.c:608) 
[ 2618.973426][ C1] ? bpf_get_cgroup_classid (include/net/inet_sock.h:305) 
[ 2618.978366][ C1] ? __lock_release (kernel/locking/lockdep.c:5345) 
[ 2618.982783][ C1] ? raw_v4_input (include/linux/rcupdate.h:802) 
[ 2618.987111][ C1] tcp_v4_rcv (net/ipv4/tcp_ipv4.c:2074) 
[ 2618.991854][ C1] ? ip_local_deliver_finish (include/linux/skbuff.h:2626) 
[ 2618.996747][ C1] ? tcp_v4_early_demux (net/ipv4/tcp_ipv4.c:1976) 
[ 2619.001483][ C1] ? raw_rcv (net/ipv4/raw.c:317) 
[ 2619.005606][ C1] ip_protocol_deliver_rcu (net/ipv4/ip_input.c:205) 
[ 2619.010740][ C1] ip_local_deliver_finish (include/linux/rcupdate.h:802) 
[ 2619.015826][ C1] ip_local_deliver (include/linux/netfilter.h:302) 
[ 2619.020199][ C1] ? ip_local_deliver_finish (net/ipv4/ip_input.c:243) 
[ 2619.025279][ C1] ? ip_rcv_finish_core.constprop.0 (include/linux/skbuff.h:1121) 
[ 2619.031584][ C1] ip_rcv (include/linux/netfilter.h:302) 
[ 2619.035234][ C1] ? ip_local_deliver (net/ipv4/ip_input.c:562) 
[ 2619.040581][ C1] ? lock_acquire (kernel/locking/lockdep.c:467) 
[ 2619.044776][ C1] ? process_backlog (include/linux/skbuff.h:2341) 
[ 2619.049246][ C1] ? ip_local_deliver (net/ipv4/ip_input.c:562) 
[ 2619.054513][ C1] __netif_receive_skb_one_core (net/core/dev.c:5472) 
[ 2619.059748][ C1] ? __netif_receive_skb_list_core (net/core/dev.c:5472) 
[ 2619.065409][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4237) 
[ 2619.070528][ C1] process_backlog (include/linux/rcupdate.h:802) 
[ 2619.075364][ C1] __napi_poll.constprop.0 (net/core/dev.c:6483) 
[ 2619.080623][ C1] net_rx_action (net/core/dev.c:6549) 
[ 2619.085805][ C1] ? __napi_poll.constprop.0 (net/core/dev.c:6635) 
[ 2619.090961][ C1] ? kvm_clock_read (arch/x86/include/asm/preempt.h:95) 
[ 2619.096018][ C1] ? ktime_get (kernel/time/timekeeping.c:292 (discriminator 4)) 
[ 2619.100703][ C1] ? hrtimer_interrupt (kernel/time/hrtimer.c:1824) 
[ 2619.105376][ C1] __do_softirq (arch/x86/include/asm/jump_label.h:27) 
[ 2619.109577][ C1] do_softirq (kernel/softirq.c:472) 
[ 2619.113557][    C1]  </IRQ>
[ 2619.116325][    C1]  <TASK>
[ 2619.119461][ C1] ? ip_finish_output2 (include/linux/rcupdate.h:332) 
[ 2619.124758][ C1] __local_bh_enable_ip (kernel/softirq.c:396) 
[ 2619.129343][ C1] ip_finish_output2 (net/ipv4/ip_output.c:195) 
[ 2619.134813][ C1] ? ip_fragment.constprop.0 (net/ipv4/ip_output.c:195) 
[ 2619.139959][ C1] ? ip_skb_dst_mtu (include/linux/skbuff.h:1121) 
[ 2619.144286][ C1] ? __ip_finish_output.part.0 (include/linux/skbuff.h:1590) 
[ 2619.149962][ C1] __ip_queue_xmit (include/net/dst.h:444) 
[ 2619.154377][ C1] ? __skb_clone (arch/x86/include/asm/atomic.h:95 (discriminator 4)) 
[ 2619.158843][ C1] __tcp_transmit_skb (net/ipv4/tcp_output.c:1399) 
[ 2619.164307][ C1] ? __tcp_select_window (net/ipv4/tcp_output.c:1236) 
[ 2619.169851][ C1] ? lock_release (kernel/locking/lockdep.c:5637) 
[ 2619.174888][ C1] ? lock_downgrade (kernel/locking/lockdep.c:5321) 
[ 2619.180092][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4263) 
[ 2619.186275][ C1] tcp_write_xmit (net/ipv4/tcp_output.c:2693) 
[ 2619.191377][ C1] ? mptcp_sendmsg_frag (net/mptcp/protocol.c:1332) 
[ 2619.196832][ C1] __tcp_push_pending_frames (net/ipv4/tcp_output.c:2877) 
[ 2619.201814][ C1] __mptcp_push_pending (net/mptcp/protocol.c:1495) 
[ 2619.207031][ C1] ? mptcp_shutdown (net/mptcp/protocol.c:1530) 
[ 2619.211877][ C1] ? __sk_mem_raise_allocated (arch/x86/include/asm/atomic64_64.h:22) 
[ 2619.217041][ C1] ? copy_page_from_iter (lib/iov_iter.c:750) 
[ 2619.221792][ C1] mptcp_sendmsg (net/mptcp/protocol.c:1816) 
[ 2619.226755][ C1] ? mptcp_disconnect (net/mptcp/protocol.c:1699) 
[ 2619.231855][ C1] ? inet_send_prepare (net/ipv4/af_inet.c:822) 
[ 2619.237002][ C1] sock_sendmsg (net/socket.c:725) 
[ 2619.241288][ C1] sock_write_iter (net/socket.c:1137) 
[ 2619.245451][ C1] ? sock_sendmsg (net/socket.c:1120) 
[ 2619.250478][ C1] ? selinux_file_permission (security/selinux/hooks.c:3581) 
[ 2619.256347][ C1] vfs_write (include/linux/fs.h:1851) 
[ 2619.260945][ C1] ? kernel_write (fs/read_write.c:565) 
[ 2619.265394][ C1] ? nsec_to_clock_t (kernel/time/time.c:767) 
[ 2619.270768][ C1] ? ktime_get_ts64 (kernel/time/timekeeping.c:292 (discriminator 4)) 
[ 2619.275972][ C1] ? __fget_light (include/linux/atomic/atomic-arch-fallback.h:227) 
[ 2619.280611][ C1] ksys_write (fs/read_write.c:637) 
[ 2619.285285][ C1] ? __ia32_sys_read (fs/read_write.c:627) 
[ 2619.290429][ C1] do_syscall_64 (arch/x86/entry/common.c:50) 
[ 2619.294835][ C1] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:120) 
[ 2619.300191][    C1] RIP: 0033:0x7fb032cf3a37
[ 2619.304261][ C1] Code: 10 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 48 89 54 24 18 48 89 74 24
All code
========
   0:	10 00                	adc    %al,(%rax)
   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 b7                	jmp    0xffffffffffffffc7
  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 01 00 00 00       	mov    $0x1,%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:	48 89 54 24 18       	mov    %rdx,0x18(%rsp)
  3c:	48                   	rex.W
  3d:	89                   	.byte 0x89
  3e:	74 24                	je     0x64

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:	48 89 54 24 18       	mov    %rdx,0x18(%rsp)
  12:	48                   	rex.W
  13:	89                   	.byte 0x89
  14:	74 24                	je     0x3a
[ 2619.321535][    C1] RSP: 002b:00007ffe27e6a7a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
[ 2619.330290][    C1] RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 00007fb032cf3a37
[ 2619.337764][    C1] RDX: 0000000000000014 RSI: 00007ffe27e6c980 RDI: 0000000000000003
[ 2619.344942][    C1] RBP: 0000000000000014 R08: 0000000000000000 R09: 00007fb032df8280
[ 2619.352961][    C1] R10: 000055c9f08c6d8a R11: 0000000000000246 R12: 00007ffe27e6c980
[ 2619.360209][    C1] R13: 00007ffe27e6c980 R14: 0000000000000000 R15: 0000000000000000
[ 2619.368473][    C1]  </TASK>
[ 2619.371798][    C1] irq event stamp: 89794
[ 2619.376291][ C1] hardirqs last enabled at (89806): __up_console_sem (kernel/printk/printk.c:345 (discriminator 1)) 
[ 2619.385443][ C1] hardirqs last disabled at (89817): __up_console_sem (kernel/printk/printk.c:343 (discriminator 1)) 
[ 2619.394591][ C1] softirqs last enabled at (88148): ip_finish_output2 (include/linux/rcupdate.h:332) 
[ 2619.404271][ C1] softirqs last disabled at (88149): do_softirq (kernel/softirq.c:472) 
[ 2619.412233][    C1] ---[ end trace 0000000000000000 ]---
[ 2619.417524][    C1] ------------[ cut here ]------------
[ 2619.423201][    C1] ODEBUG: active_state active (active state 1) object: 000000008e2baffe object type: rcu_head hint: 0x0
[ 2619.434224][ C1] WARNING: CPU: 1 PID: 12976 at lib/debugobjects.c:509 debug_print_object (lib/debugobjects.c:509) 
[ 2619.442427][    C1] Modules linked in: act_csum act_pedit cls_fw sch_ingress xt_mark xt_statistic xt_length xt_bpf sch_netem ipt_REJECT nft_compat nf_tables
[ 2619.454806][    C1] CPU: 1 PID: 12976 Comm: mptcp_connect Tainted: G        W          6.2.0-g97911e374b86 #1
[ 2619.464809][    C1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014
[ 2619.473405][ C1] RIP: 0010:debug_print_object (lib/debugobjects.c:509) 
[ 2619.478974][ C1] Code: 48 89 fa 48 c1 ea 03 80 3c 02 00 0f 85 aa 00 00 00 41 56 48 8b 14 dd e0 8b 69 b7 4c 89 ee 48 c7 c7 40 7f 69 b7 e8 9a 3f 01 ff <0f> 0b 58 83 05 f4 81 1e 03 01 48 83 c4 18 5b 5d 41 5c 41 5d 41 5e
All code
========
   0:	48 89 fa             	mov    %rdi,%rdx
   3:	48 c1 ea 03          	shr    $0x3,%rdx
   7:	80 3c 02 00          	cmpb   $0x0,(%rdx,%rax,1)
   b:	0f 85 aa 00 00 00    	jne    0xbb
  11:	41 56                	push   %r14
  13:	48 8b 14 dd e0 8b 69 	mov    -0x48967420(,%rbx,8),%rdx
  1a:	b7 
  1b:	4c 89 ee             	mov    %r13,%rsi
  1e:	48 c7 c7 40 7f 69 b7 	mov    $0xffffffffb7697f40,%rdi
  25:	e8 9a 3f 01 ff       	call   0xffffffffff013fc4
  2a:*	0f 0b                	ud2    		<-- trapping instruction
  2c:	58                   	pop    %rax
  2d:	83 05 f4 81 1e 03 01 	addl   $0x1,0x31e81f4(%rip)        # 0x31e8228
  34:	48 83 c4 18          	add    $0x18,%rsp
  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:	0f 0b                	ud2    
   2:	58                   	pop    %rax
   3:	83 05 f4 81 1e 03 01 	addl   $0x1,0x31e81f4(%rip)        # 0x31e81fe
   a:	48 83 c4 18          	add    $0x18,%rsp
   e:	5b                   	pop    %rbx
   f:	5d                   	pop    %rbp
  10:	41 5c                	pop    %r12
  12:	41 5d                	pop    %r13
  14:	41 5e                	pop    %r14
[ 2619.496353][    C1] RSP: 0018:ffffc900001b8418 EFLAGS: 00010286
[ 2619.502224][    C1] RAX: 0000000000000000 RBX: 0000000000000003 RCX: ffffffffb4aeefdf
[ 2619.509337][    C1] RDX: 0000000000000000 RSI: 0000000000000008 RDI: 0000000000000001
[ 2619.516957][    C1] RBP: 0000000000000002 R08: 0000000000000000 R09: ffffc900001b814f
[ 2619.524582][    C1] R10: fffff52000037029 R11: 0000000000000001 R12: ffffffffb74d5ea0
[ 2619.532260][    C1] R13: ffffffffb7698420 R14: 0000000000000000 R15: ffff88800b0b6fd8
[ 2619.540316][    C1] FS:  00007fb032bdc740(0000) GS:ffff88806d080000(0000) knlGS:0000000000000000
[ 2619.549972][    C1] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 2619.556539][    C1] CR2: 00007ffe27e6a7e8 CR3: 0000000007d26002 CR4: 0000000000170ee0
[ 2619.564483][    C1] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 2619.572458][    C1] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[ 2619.580742][    C1] Call Trace:
[ 2619.584263][    C1]  <IRQ>
[ 2619.587477][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4255) 
[ 2619.593803][ C1] debug_object_active_state (lib/debugobjects.c:957) 
[ 2619.598866][ C1] ? debug_object_activate (lib/debugobjects.c:682) 
[ 2619.604765][ C1] ? __debug_check_no_obj_freed (lib/debugobjects.c:920) 
[ 2619.611205][ C1] ? tcp_v6_do_rcv (net/ipv6/tcp_ipv6.c:1201) 
[ 2619.615761][ C1] kvfree_call_rcu (kernel/rcu/tree.c:3307 (discriminator 1)) 
[ 2619.620321][ C1] ? cond_synchronize_rcu_full (kernel/rcu/tree.c:3291) 
[ 2619.624871][ C1] ? mptcp_sk_clone (net/mptcp/protocol.c:3125) 
[ 2619.629317][ C1] ? do_raw_spin_unlock (arch/x86/include/asm/atomic.h:29) 
[ 2619.634262][ C1] ? _raw_spin_unlock (arch/x86/include/asm/preempt.h:95) 
[ 2619.638786][ C1] subflow_syn_recv_sock (net/mptcp/subflow.c:911) 
[ 2619.643794][ C1] ? mptcp_subflow_fully_established (net/mptcp/subflow.c:753) 
[ 2619.650997][ C1] ? selinux_socket_sock_rcv_skb (security/selinux/hooks.c:5094) 
[ 2619.657468][ C1] ? selinux_sock_rcv_skb_compat (security/selinux/hooks.c:5071) 
[ 2619.664352][ C1] ? find_held_lock (kernel/locking/lockdep.c:5159) 
[ 2619.669392][ C1] ? __lock_release (kernel/locking/lockdep.c:5345) 
[ 2619.674252][ C1] ? sk_filter_trim_cap (include/linux/rcupdate.h:805) 
[ 2619.679567][ C1] ? lock_downgrade (kernel/locking/lockdep.c:5321) 
[ 2619.685176][ C1] tcp_check_req (net/ipv4/tcp_minisocks.c:808) 
[ 2619.690772][ C1] ? sk_filter_trim_cap (include/linux/rcupdate.h:807) 
[ 2619.696782][ C1] ? tcp_ca_openreq_child (net/ipv4/tcp_minisocks.c:608) 
[ 2619.701803][ C1] ? bpf_get_cgroup_classid (include/net/inet_sock.h:305) 
[ 2619.707794][ C1] ? __lock_release (kernel/locking/lockdep.c:5345) 
[ 2619.712802][ C1] ? raw_v4_input (include/linux/rcupdate.h:802) 
[ 2619.717431][ C1] tcp_v4_rcv (net/ipv4/tcp_ipv4.c:2074) 
[ 2619.722209][ C1] ? ip_local_deliver_finish (include/linux/skbuff.h:2626) 
[ 2619.728820][ C1] ? tcp_v4_early_demux (net/ipv4/tcp_ipv4.c:1976) 
[ 2619.734583][ C1] ? raw_rcv (net/ipv4/raw.c:317) 
[ 2619.738961][ C1] ip_protocol_deliver_rcu (net/ipv4/ip_input.c:205) 
[ 2619.745261][ C1] ip_local_deliver_finish (include/linux/rcupdate.h:802) 
[ 2619.751015][ C1] ip_local_deliver (include/linux/netfilter.h:302) 
[ 2619.756781][ C1] ? ip_local_deliver_finish (net/ipv4/ip_input.c:243) 
[ 2619.762802][ C1] ? ip_rcv_finish_core.constprop.0 (include/linux/skbuff.h:1121) 
[ 2619.769977][ C1] ip_rcv (include/linux/netfilter.h:302) 
[ 2619.774106][ C1] ? ip_local_deliver (net/ipv4/ip_input.c:562) 
[ 2619.779968][ C1] ? lock_acquire (kernel/locking/lockdep.c:467) 
[ 2619.784461][ C1] ? process_backlog (include/linux/skbuff.h:2341) 
[ 2619.789786][ C1] ? ip_local_deliver (net/ipv4/ip_input.c:562) 
[ 2619.795766][ C1] __netif_receive_skb_one_core (net/core/dev.c:5472) 
[ 2619.801830][ C1] ? __netif_receive_skb_list_core (net/core/dev.c:5472) 
[ 2619.808859][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4237) 
[ 2619.814078][ C1] process_backlog (include/linux/rcupdate.h:802) 
[ 2619.818882][ C1] __napi_poll.constprop.0 (net/core/dev.c:6483) 
[ 2619.824366][ C1] net_rx_action (net/core/dev.c:6549) 
[ 2619.828952][ C1] ? __napi_poll.constprop.0 (net/core/dev.c:6635) 
[ 2619.834710][ C1] ? kvm_clock_read (arch/x86/include/asm/preempt.h:95) 
[ 2619.839053][ C1] ? ktime_get (kernel/time/timekeeping.c:292 (discriminator 4)) 
[ 2619.843022][ C1] ? hrtimer_interrupt (kernel/time/hrtimer.c:1824) 
[ 2619.847799][ C1] __do_softirq (arch/x86/include/asm/jump_label.h:27) 
[ 2619.852245][ C1] do_softirq (kernel/softirq.c:472) 
[ 2619.856017][    C1]  </IRQ>
[ 2619.858507][    C1]  <TASK>
[ 2619.861485][ C1] ? ip_finish_output2 (include/linux/rcupdate.h:332) 
[ 2619.865702][ C1] __local_bh_enable_ip (kernel/softirq.c:396) 
[ 2619.870338][ C1] ip_finish_output2 (net/ipv4/ip_output.c:195) 
[ 2619.874951][ C1] ? ip_fragment.constprop.0 (net/ipv4/ip_output.c:195) 
[ 2619.880272][ C1] ? ip_skb_dst_mtu (include/linux/skbuff.h:1121) 
[ 2619.884807][ C1] ? __ip_finish_output.part.0 (include/linux/skbuff.h:1590) 
[ 2619.890068][ C1] __ip_queue_xmit (include/net/dst.h:444) 
[ 2619.894295][ C1] ? __skb_clone (arch/x86/include/asm/atomic.h:95 (discriminator 4)) 
[ 2619.898506][ C1] __tcp_transmit_skb (net/ipv4/tcp_output.c:1399) 
[ 2619.903261][ C1] ? __tcp_select_window (net/ipv4/tcp_output.c:1236) 
[ 2619.907829][ C1] ? lock_release (kernel/locking/lockdep.c:5637) 
[ 2619.911618][ C1] ? lock_downgrade (kernel/locking/lockdep.c:5321) 
[ 2619.916330][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4263) 
[ 2619.922344][ C1] tcp_write_xmit (net/ipv4/tcp_output.c:2693) 
[ 2619.926907][ C1] ? mptcp_sendmsg_frag (net/mptcp/protocol.c:1332) 
[ 2619.932414][ C1] __tcp_push_pending_frames (net/ipv4/tcp_output.c:2877) 
[ 2619.937454][ C1] __mptcp_push_pending (net/mptcp/protocol.c:1495) 
[ 2619.941981][ C1] ? mptcp_shutdown (net/mptcp/protocol.c:1530) 
[ 2619.946100][ C1] ? __sk_mem_raise_allocated (arch/x86/include/asm/atomic64_64.h:22) 
[ 2619.951158][ C1] ? copy_page_from_iter (lib/iov_iter.c:750) 
[ 2619.956024][ C1] mptcp_sendmsg (net/mptcp/protocol.c:1816) 
[ 2619.959961][ C1] ? mptcp_disconnect (net/mptcp/protocol.c:1699) 
[ 2619.964030][ C1] ? inet_send_prepare (net/ipv4/af_inet.c:822) 
[ 2619.968460][ C1] sock_sendmsg (net/socket.c:725) 
[ 2619.972902][ C1] sock_write_iter (net/socket.c:1137) 
[ 2619.977793][ C1] ? sock_sendmsg (net/socket.c:1120) 
[ 2619.981898][ C1] ? selinux_file_permission (security/selinux/hooks.c:3581) 
[ 2619.987006][ C1] vfs_write (include/linux/fs.h:1851) 
[ 2619.991485][ C1] ? kernel_write (fs/read_write.c:565) 
[ 2619.995545][ C1] ? nsec_to_clock_t (kernel/time/time.c:767) 
[ 2619.999804][ C1] ? ktime_get_ts64 (kernel/time/timekeeping.c:292 (discriminator 4)) 
[ 2620.004162][ C1] ? __fget_light (include/linux/atomic/atomic-arch-fallback.h:227) 
[ 2620.008563][ C1] ksys_write (fs/read_write.c:637) 
[ 2620.012806][ C1] ? __ia32_sys_read (fs/read_write.c:627) 
[ 2620.017356][ C1] do_syscall_64 (arch/x86/entry/common.c:50) 
[ 2620.021155][ C1] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:120) 
[ 2620.025858][    C1] RIP: 0033:0x7fb032cf3a37
[ 2620.029797][ C1] Code: 10 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 48 89 54 24 18 48 89 74 24
All code
========
   0:	10 00                	adc    %al,(%rax)
   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 b7                	jmp    0xffffffffffffffc7
  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 01 00 00 00       	mov    $0x1,%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:	48 89 54 24 18       	mov    %rdx,0x18(%rsp)
  3c:	48                   	rex.W
  3d:	89                   	.byte 0x89
  3e:	74 24                	je     0x64

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:	48 89 54 24 18       	mov    %rdx,0x18(%rsp)
  12:	48                   	rex.W
  13:	89                   	.byte 0x89
  14:	74 24                	je     0x3a
[ 2620.047250][    C1] RSP: 002b:00007ffe27e6a7a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
[ 2620.055032][    C1] RAX: ffffffffffffffda RBX: 0000000000000003 RCX: 00007fb032cf3a37
[ 2620.063150][    C1] RDX: 0000000000000014 RSI: 00007ffe27e6c980 RDI: 0000000000000003
[ 2620.069750][    C1] RBP: 0000000000000014 R08: 0000000000000000 R09: 00007fb032df8280
[ 2620.076824][    C1] R10: 000055c9f08c6d8a R11: 0000000000000246 R12: 00007ffe27e6c980
[ 2620.084066][    C1] R13: 00007ffe27e6c980 R14: 0000000000000000 R15: 0000000000000000
[ 2620.091329][    C1]  </TASK>
[ 2620.093982][    C1] irq event stamp: 91398
[ 2620.098308][ C1] hardirqs last enabled at (91410): __up_console_sem (kernel/printk/printk.c:345 (discriminator 1)) 
[ 2620.106924][ C1] hardirqs last disabled at (91421): __up_console_sem (kernel/printk/printk.c:343 (discriminator 1)) 
[ 2620.115086][ C1] softirqs last enabled at (88148): ip_finish_output2 (include/linux/rcupdate.h:332) 
[ 2620.124066][ C1] softirqs last disabled at (88149): do_softirq (kernel/softirq.c:472) 
[ 2620.133155][    C1] ---[ end trace 0000000000000000 ]---
[ 2620.138101][    C1] ------------[ cut here ]------------
[ 2620.142777][    C1] kvfree_call_rcu(): Double-freed call. rcu_head 00000000cb088229
[ 2620.149784][ C1] WARNING: CPU: 1 PID: 12976 at kernel/rcu/tree.c:3309 kvfree_call_rcu (kernel/rcu/tree.c:3309 (discriminator 3)) 
[ 2620.158306][    C1] Modules linked in: act_csum act_pedit cls_fw sch_ingress xt_mark xt_statistic xt_length xt_bpf sch_netem ipt_REJECT nft_compat nf_tables
[ 2620.169776][    C1] CPU: 1 PID: 12976 Comm: mptcp_connect Tainted: G        W          6.2.0-g97911e374b86 #1
[ 2620.179019][    C1] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014
[ 2620.187200][ C1] RIP: 0010:kvfree_call_rcu (kernel/rcu/tree.c:3309 (discriminator 3)) 
[ 2620.191786][ C1] Code: 48 89 ef e8 c5 d8 4d 02 e9 66 ff ff ff 4c 89 e2 48 c7 c6 e0 b8 4d b7 48 c7 c7 e0 9e 4d b7 c6 05 50 7f fa 03 01 e8 83 4c e2 ff <0f> 0b e9 42 ff ff ff be e8 0c 00 00 48 c7 c7 a0 7e 4d b7 e8 7b 65
All code
========
   0:	48 89 ef             	mov    %rbp,%rdi
   3:	e8 c5 d8 4d 02       	call   0x24dd8cd
   8:	e9 66 ff ff ff       	jmp    0xffffffffffffff73
   d:	4c 89 e2             	mov    %r12,%rdx
  10:	48 c7 c6 e0 b8 4d b7 	mov    $0xffffffffb74db8e0,%rsi
  17:	48 c7 c7 e0 9e 4d b7 	mov    $0xffffffffb74d9ee0,%rdi
  1e:	c6 05 50 7f fa 03 01 	movb   $0x1,0x3fa7f50(%rip)        # 0x3fa7f75
  25:	e8 83 4c e2 ff       	call   0xffffffffffe24cad
  2a:*	0f 0b                	ud2    		<-- trapping instruction
  2c:	e9 42 ff ff ff       	jmp    0xffffffffffffff73
  31:	be e8 0c 00 00       	mov    $0xce8,%esi
  36:	48 c7 c7 a0 7e 4d b7 	mov    $0xffffffffb74d7ea0,%rdi
  3d:	e8                   	.byte 0xe8
  3e:	7b 65                	jnp    0xa5

Code starting with the faulting instruction
===========================================
   0:	0f 0b                	ud2    
   2:	e9 42 ff ff ff       	jmp    0xffffffffffffff49
   7:	be e8 0c 00 00       	mov    $0xce8,%esi
   c:	48 c7 c7 a0 7e 4d b7 	mov    $0xffffffffb74d7ea0,%rdi
  13:	e8                   	.byte 0xe8
  14:	7b 65                	jnp    0x7b
[ 2620.207997][    C1] RSP: 0018:ffffc900001b8578 EFLAGS: 00010286
[ 2620.212897][    C1] RAX: 0000000000000000 RBX: 1ffff920000370b1 RCX: ffffffffb4aeefdf
[ 2620.220327][    C1] RDX: 0000000000000000 RSI: 0000000000000008 RDI: 0000000000000001
[ 2620.228344][    C1] RBP: 0000000000000000 R08: 0000000000000000 R09: ffffc900001b82af
[ 2620.235476][    C1] R10: fffff52000037055 R11: 0000000000000001 R12: ffff888007ec16e8
[ 2620.242477][    C1] R13: 00000000ffffffea R14: ffff888006a56000 R15: ffff888006a54000
[ 2620.248965][    C1] FS:  00007fb032bdc740(0000) GS:ffff88806d080000(0000) knlGS:0000000000000000
[ 2620.256473][    C1] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 2620.262410][    C1] CR2: 00007ffe27e6a7e8 CR3: 0000000007d26002 CR4: 0000000000170ee0
[ 2620.269799][    C1] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[ 2620.276787][    C1] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[ 2620.283971][    C1] Call Trace:
[ 2620.287278][    C1]  <IRQ>
[ 2620.289816][ C1] ? cond_synchronize_rcu_full (kernel/rcu/tree.c:3291) 
[ 2620.294994][ C1] ? mptcp_sk_clone (net/mptcp/protocol.c:3125) 
[ 2620.299115][ C1] ? do_raw_spin_unlock (arch/x86/include/asm/atomic.h:29) 
[ 2620.303460][ C1] ? _raw_spin_unlock (arch/x86/include/asm/preempt.h:95) 
[ 2620.308001][ C1] subflow_syn_recv_sock (net/mptcp/subflow.c:911) 
[ 2620.312973][ C1] ? mptcp_subflow_fully_established (net/mptcp/subflow.c:753) 
[ 2620.318595][ C1] ? selinux_socket_sock_rcv_skb (security/selinux/hooks.c:5094) 
[ 2620.324126][ C1] ? selinux_sock_rcv_skb_compat (security/selinux/hooks.c:5071) 
[ 2620.329220][ C1] ? find_held_lock (kernel/locking/lockdep.c:5159) 
[ 2620.333339][ C1] ? __lock_release (kernel/locking/lockdep.c:5345) 
[ 2620.337966][ C1] ? sk_filter_trim_cap (include/linux/rcupdate.h:805) 
[ 2620.343303][ C1] ? lock_downgrade (kernel/locking/lockdep.c:5321) 
[ 2620.347452][ C1] tcp_check_req (net/ipv4/tcp_minisocks.c:808) 
[ 2620.351820][ C1] ? sk_filter_trim_cap (include/linux/rcupdate.h:807) 
[ 2620.356005][ C1] ? tcp_ca_openreq_child (net/ipv4/tcp_minisocks.c:608) 
[ 2620.360790][ C1] ? bpf_get_cgroup_classid (include/net/inet_sock.h:305) 
[ 2620.365251][ C1] ? __lock_release (kernel/locking/lockdep.c:5345) 
[ 2620.369969][ C1] ? raw_v4_input (include/linux/rcupdate.h:802) 
[ 2620.373758][ C1] tcp_v4_rcv (net/ipv4/tcp_ipv4.c:2074) 
[ 2620.378019][ C1] ? ip_local_deliver_finish (include/linux/skbuff.h:2626) 
[ 2620.382894][ C1] ? tcp_v4_early_demux (net/ipv4/tcp_ipv4.c:1976) 
[ 2620.387616][ C1] ? raw_rcv (net/ipv4/raw.c:317) 
[ 2620.392299][ C1] ip_protocol_deliver_rcu (net/ipv4/ip_input.c:205) 
[ 2620.398075][ C1] ip_local_deliver_finish (include/linux/rcupdate.h:802) 
[ 2620.403466][ C1] ip_local_deliver (include/linux/netfilter.h:302) 
[ 2620.408221][ C1] ? ip_local_deliver_finish (net/ipv4/ip_input.c:243) 
[ 2620.413566][ C1] ? ip_rcv_finish_core.constprop.0 (include/linux/skbuff.h:1121) 
[ 2620.419391][ C1] ip_rcv (include/linux/netfilter.h:302) 
[ 2620.423009][ C1] ? ip_local_deliver (net/ipv4/ip_input.c:562) 
[ 2620.427072][ C1] ? lock_acquire (kernel/locking/lockdep.c:467) 
[ 2620.431330][ C1] ? process_backlog (include/linux/skbuff.h:2341) 
[ 2620.435772][ C1] ? ip_local_deliver (net/ipv4/ip_input.c:562) 
[ 2620.440330][ C1] __netif_receive_skb_one_core (net/core/dev.c:5472) 
[ 2620.445732][ C1] ? __netif_receive_skb_list_core (net/core/dev.c:5472) 
[ 2620.451513][ C1] ? mark_held_locks (kernel/locking/lockdep.c:4237) 
[ 2620.455983][ C1] process_backlog (include/linux/rcupdate.h:802) 
[ 2620.460801][ C1] __napi_poll.constprop.0 (net/core/dev.c:6483) 
[ 2620.465586][ C1] net_rx_action (net/core/dev.c:6549) 
[ 2620.469975][ C1] ? __napi_poll.constprop.0 (net/core/dev.c:6635) 
[ 2620.475386][ C1] ? kvm_clock_read (arch/x86/include/asm/preempt.h:95) 
[ 2620.480176][ C1] ? ktime_get (kernel/time/timekeeping.c:292 (discriminator 4)) 
[ 2620.484092][ C1] ? hrtimer_interrupt (kernel/time/hrtimer.c:1824) 
[ 2620.488286][ C1] __do_softirq (arch/x86/include/asm/jump_label.h:27) 
[ 2620.492192][ C1] do_softirq (kernel/softirq.c:472) 
[ 2620.495998][    C1]  </IRQ>
[ 2620.498569][    C1]  <TASK>
[ 2620.501195][ C1] ? ip_finish_output2 (include/linux/rcupdate.h:332) 
[ 2620.505563][ C1] __local_bh_enable_ip (kernel/softirq.c:396) 
[ 2620.510224][ C1] ip_finish_output2 (net/ipv4/ip_output.c:195) 
[ 2620.515052][ C1] ? ip_fragment.constprop.0 (net/ipv4/ip_output.c:195) 
[ 2620.521282][ C1] ? ip_skb_dst_mtu (include/linux/skbuff.h:1121) 
[ 2620.525542][ C1] ? __ip_finish_output.part.0 (include/linux/skbuff.h:1590) 
[ 2620.530480][ C1] __ip_queue_xmit (include/net/dst.h:444) 
[ 2620.535231][ C1] ? __skb_clone (arch/x86/include/asm/atomic.h:95 (discriminator 4)) 
[ 2620.539311][ C1] __tcp_transmit_skb (net/ipv4/tcp_output.c:1399) 
[ 2620.543827][ C1] ? __tcp_select_window (net/ipv4/tcp_output.c:1236) 
[ 2620.548217][ C1] ? lock_release (kernel/locking/lockdep.c:5637) 
[ 2620.552131][ C1] ? lock_downgrade (kernel/locking/lockdep.c:5321) 
[ 2620.556114][ C1] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4263) 
[ 2620.561405][ C1] tcp_write_xmit (net/ipv4/tcp_output.c:2693) 
[ 2620.565835][ C1] ? mptcp_sendmsg_frag (net/mptcp/protocol.c:1332) 
[ 2620.570518][ C1] __tcp_push_pending_frames (net/ipv4/tcp_output.c:2877) 
[ 2620.575172][ C1] __mptcp_push_pending (net/mptcp/protocol.c:1495) 
[ 2620.579943][ C1] ? mptcp_shutdown (net/mptcp/protocol.c:1530) 
[ 2620.584055][ C1] ? __sk_mem_raise_allocated (arch/x86/include/asm/atomic64_64.h:22) 
[ 2620.588918][ C1] ? copy_page_from_iter (lib/iov_iter.c:750) 
[ 2620.594232][ C1] mptcp_sendmsg (net/mptcp/protocol.c:1816) 
[ 2620.598353][ C1] ? mptcp_disconnect (net/mptcp/protocol.c:1699) 
[ 2620.602924][ C1] ? inet_send_prepare (net/ipv4/af_inet.c:822) 
[ 2620.607434][ C1] sock_sendmsg (net/socket.c:725) 
[ 2620.611090][ C1] sock_write_iter (net/socket.c:1137) 
[ 2620.615302][ C1] ? sock_sendmsg (net/socket.c:1120) 
[ 2620.619383][ C1] ? selinux_file_permission (security/selinux/hooks.c:3581) 
[ 2620.624891][ C1] vfs_write (include/linux/fs.h:1851) 
[ 2620.628886][ C1] ? kernel_write (fs/read_write.c:565) 
[ 2620.632905][ C1] ? nsec_to_clock_t (kernel/time/time.c:767) 
[ 2620.636850][ C1] ? ktime_get_ts64 (kernel/time/timekeeping.c:292 (discriminator 4)) 
[ 2620.641493][ C1] ? __fget_light (include/linux/atomic/atomic-arch-fallback.h:227) 
[ 2620.645553][ C1] ksys_write (fs/read_write.c:637) 

Source:

Apparently due to the last sync with netdev: export-net/20230307T111043..export-net/20230308T055248

We don't have such issue on export.

@matttbe matttbe added the bug label Mar 8, 2023
@matttbe
Copy link
Member Author

matttbe commented Mar 8, 2023

The modification from -net:

9f7dd42f0db1 netfilter: ctnetlink: revert to dumping mark regardless of event type
4a02426787bf netfilter: tproxy: fix deadlock due to missing BH disable
c77737b736ce netfilter: conntrack: adopt safer max chain length
775c73df905e Merge branch 'main' of git://git.kernel.org/pub/scm/linux/kernel/git/netfilter/nf
418383e6ed6b net: usb: cdc_mbim: avoid altsetting toggling for Telit FE990
382e363d5bed net: usb: qmi_wwan: add Telit 0x1080 composition
7d834b4d1ab6 nfc: change order inside nfc_se_io error path
e7b15acdc10f mailmap: add entry for Maxim Mikityanskiy
b1649b0fe98c mailmap: update entries for Stephen Hemminger
37d9df224d1e ynl: re-license uniformly under GPL-2.0 OR BSD-3-Clause

@matttbe
Copy link
Member Author

matttbe commented Mar 8, 2023

here is what has been suggested by @pabeni on IRC, just not to loose the idea:

I see. I think the problem due to 2 commits:

  • mptcp: fix possible memory leak on syn_recv race (from export-net)
  • mptcp: drop legacy code (from export (next))

the 2nd (next) introduces the leak fixed by the first one
the first one (net), without the 2nd causes double free
I think the most straight-forward solution is dropping both of them

matttbe added a commit that referenced this issue Mar 9, 2023
This reverts commit 1272755.

According to Paolo, this one is causing issue #370 and it was needed
because of "mptcp: drop legacy code".

Closes: #370
Signed-off-by: Matthieu Baerts <[email protected]>
matttbe added a commit that referenced this issue Mar 9, 2023
This reverts commit ccd4c33.

According to Paolo, this one is causing issue #356 and indirectly #370.

Closes: #356
Signed-off-by: Matthieu Baerts <[email protected]>
@matttbe
Copy link
Member Author

matttbe commented Mar 9, 2023

This should be fixed by following @pabeni's instruction:

New patches for t/upstream-net:

  • 7f66433: Revert "mptcp: fix possible memory leak on syn_recv race"
  • Results: 2b7375c..6b2730c (export-net)

New patches for t/upstream:

  • 4ef602b: Revert "mptcp: drop legacy code"

Tests are now in progress:

https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export-net/20230309T090950

Cheers,
Matt

@matttbe matttbe closed this as completed Mar 9, 2023
jenkins-tessares pushed a commit that referenced this issue Sep 18, 2023
Puranjay Mohan says:

====================
arm32, bpf: add support for cpuv4 insns

Changes in V2 -> V3
- Added comments at places where there could be confustion.
- In the patch for DIV64, fix the if-else case that would never run.
- In the same patch use a single instruction to POP caller saved regs.
- Add a patch to change maintainership of ARM32 BPF JIT.

Changes in V1 -> V2:
- Fix coding style issues.
- Don't use tmp variable for src in emit_ldsx_r() as it is redundant.
- Optimize emit_ldsx_r() when offset can fit in immediate.

Add the support for cpuv4 instructions for ARM32 BPF JIT. 64-bit division
was not supported earlier so this series adds 64-bit DIV, SDIV, MOD, SMOD
instructions as well.

This series needs any one of the patches from [1] to disable zero-extension
for BPF_MEMSX to support ldsx.

The relevant selftests have passed expect ldsx_insn which needs fentry:

Tested on BeagleBone Black (ARMv7-A):

[root@alarm del]# echo 1 > /proc/sys/net/core/bpf_jit_enable
[root@alarm del]# ./test_progs -a verifier_sdiv,verifier_movsx,verifier_ldsx,verifier_gotol,verifier_bswap
#337/1   verifier_bswap/BSWAP, 16:OK
#337/2   verifier_bswap/BSWAP, 16 @unpriv:OK
#337/3   verifier_bswap/BSWAP, 32:OK
#337/4   verifier_bswap/BSWAP, 32 @unpriv:OK
#337/5   verifier_bswap/BSWAP, 64:OK
#337/6   verifier_bswap/BSWAP, 64 @unpriv:OK
#337     verifier_bswap:OK
#351/1   verifier_gotol/gotol, small_imm:OK
#351/2   verifier_gotol/gotol, small_imm @unpriv:OK
#351     verifier_gotol:OK
#359/1   verifier_ldsx/LDSX, S8:OK
#359/2   verifier_ldsx/LDSX, S8 @unpriv:OK
#359/3   verifier_ldsx/LDSX, S16:OK
#359/4   verifier_ldsx/LDSX, S16 @unpriv:OK
#359/5   verifier_ldsx/LDSX, S32:OK
#359/6   verifier_ldsx/LDSX, S32 @unpriv:OK
#359/7   verifier_ldsx/LDSX, S8 range checking, privileged:OK
#359/8   verifier_ldsx/LDSX, S16 range checking:OK
#359/9   verifier_ldsx/LDSX, S16 range checking @unpriv:OK
#359/10  verifier_ldsx/LDSX, S32 range checking:OK
#359/11  verifier_ldsx/LDSX, S32 range checking @unpriv:OK
#359     verifier_ldsx:OK
#370/1   verifier_movsx/MOV32SX, S8:OK
#370/2   verifier_movsx/MOV32SX, S8 @unpriv:OK
#370/3   verifier_movsx/MOV32SX, S16:OK
#370/4   verifier_movsx/MOV32SX, S16 @unpriv:OK
#370/5   verifier_movsx/MOV64SX, S8:OK
#370/6   verifier_movsx/MOV64SX, S8 @unpriv:OK
#370/7   verifier_movsx/MOV64SX, S16:OK
#370/8   verifier_movsx/MOV64SX, S16 @unpriv:OK
#370/9   verifier_movsx/MOV64SX, S32:OK
#370/10  verifier_movsx/MOV64SX, S32 @unpriv:OK
#370/11  verifier_movsx/MOV32SX, S8, range_check:OK
#370/12  verifier_movsx/MOV32SX, S8, range_check @unpriv:OK
#370/13  verifier_movsx/MOV32SX, S16, range_check:OK
#370/14  verifier_movsx/MOV32SX, S16, range_check @unpriv:OK
#370/15  verifier_movsx/MOV32SX, S16, range_check 2:OK
#370/16  verifier_movsx/MOV32SX, S16, range_check 2 @unpriv:OK
#370/17  verifier_movsx/MOV64SX, S8, range_check:OK
#370/18  verifier_movsx/MOV64SX, S8, range_check @unpriv:OK
#370/19  verifier_movsx/MOV64SX, S16, range_check:OK
#370/20  verifier_movsx/MOV64SX, S16, range_check @unpriv:OK
#370/21  verifier_movsx/MOV64SX, S32, range_check:OK
#370/22  verifier_movsx/MOV64SX, S32, range_check @unpriv:OK
#370/23  verifier_movsx/MOV64SX, S16, R10 Sign Extension:OK
#370/24  verifier_movsx/MOV64SX, S16, R10 Sign Extension @unpriv:OK
#370     verifier_movsx:OK
#382/1   verifier_sdiv/SDIV32, non-zero imm divisor, check 1:OK
#382/2   verifier_sdiv/SDIV32, non-zero imm divisor, check 1 @unpriv:OK
#382/3   verifier_sdiv/SDIV32, non-zero imm divisor, check 2:OK
#382/4   verifier_sdiv/SDIV32, non-zero imm divisor, check 2 @unpriv:OK
#382/5   verifier_sdiv/SDIV32, non-zero imm divisor, check 3:OK
#382/6   verifier_sdiv/SDIV32, non-zero imm divisor, check 3 @unpriv:OK
#382/7   verifier_sdiv/SDIV32, non-zero imm divisor, check 4:OK
#382/8   verifier_sdiv/SDIV32, non-zero imm divisor, check 4 @unpriv:OK
#382/9   verifier_sdiv/SDIV32, non-zero imm divisor, check 5:OK
#382/10  verifier_sdiv/SDIV32, non-zero imm divisor, check 5 @unpriv:OK
#382/11  verifier_sdiv/SDIV32, non-zero imm divisor, check 6:OK
#382/12  verifier_sdiv/SDIV32, non-zero imm divisor, check 6 @unpriv:OK
#382/13  verifier_sdiv/SDIV32, non-zero imm divisor, check 7:OK
#382/14  verifier_sdiv/SDIV32, non-zero imm divisor, check 7 @unpriv:OK
#382/15  verifier_sdiv/SDIV32, non-zero imm divisor, check 8:OK
#382/16  verifier_sdiv/SDIV32, non-zero imm divisor, check 8 @unpriv:OK
#382/17  verifier_sdiv/SDIV32, non-zero reg divisor, check 1:OK
#382/18  verifier_sdiv/SDIV32, non-zero reg divisor, check 1 @unpriv:OK
#382/19  verifier_sdiv/SDIV32, non-zero reg divisor, check 2:OK
#382/20  verifier_sdiv/SDIV32, non-zero reg divisor, check 2 @unpriv:OK
#382/21  verifier_sdiv/SDIV32, non-zero reg divisor, check 3:OK
#382/22  verifier_sdiv/SDIV32, non-zero reg divisor, check 3 @unpriv:OK
#382/23  verifier_sdiv/SDIV32, non-zero reg divisor, check 4:OK
#382/24  verifier_sdiv/SDIV32, non-zero reg divisor, check 4 @unpriv:OK
#382/25  verifier_sdiv/SDIV32, non-zero reg divisor, check 5:OK
#382/26  verifier_sdiv/SDIV32, non-zero reg divisor, check 5 @unpriv:OK
#382/27  verifier_sdiv/SDIV32, non-zero reg divisor, check 6:OK
#382/28  verifier_sdiv/SDIV32, non-zero reg divisor, check 6 @unpriv:OK
#382/29  verifier_sdiv/SDIV32, non-zero reg divisor, check 7:OK
#382/30  verifier_sdiv/SDIV32, non-zero reg divisor, check 7 @unpriv:OK
#382/31  verifier_sdiv/SDIV32, non-zero reg divisor, check 8:OK
#382/32  verifier_sdiv/SDIV32, non-zero reg divisor, check 8 @unpriv:OK
#382/33  verifier_sdiv/SDIV64, non-zero imm divisor, check 1:OK
#382/34  verifier_sdiv/SDIV64, non-zero imm divisor, check 1 @unpriv:OK
#382/35  verifier_sdiv/SDIV64, non-zero imm divisor, check 2:OK
#382/36  verifier_sdiv/SDIV64, non-zero imm divisor, check 2 @unpriv:OK
#382/37  verifier_sdiv/SDIV64, non-zero imm divisor, check 3:OK
#382/38  verifier_sdiv/SDIV64, non-zero imm divisor, check 3 @unpriv:OK
#382/39  verifier_sdiv/SDIV64, non-zero imm divisor, check 4:OK
#382/40  verifier_sdiv/SDIV64, non-zero imm divisor, check 4 @unpriv:OK
#382/41  verifier_sdiv/SDIV64, non-zero imm divisor, check 5:OK
#382/42  verifier_sdiv/SDIV64, non-zero imm divisor, check 5 @unpriv:OK
#382/43  verifier_sdiv/SDIV64, non-zero imm divisor, check 6:OK
#382/44  verifier_sdiv/SDIV64, non-zero imm divisor, check 6 @unpriv:OK
#382/45  verifier_sdiv/SDIV64, non-zero reg divisor, check 1:OK
#382/46  verifier_sdiv/SDIV64, non-zero reg divisor, check 1 @unpriv:OK
#382/47  verifier_sdiv/SDIV64, non-zero reg divisor, check 2:OK
#382/48  verifier_sdiv/SDIV64, non-zero reg divisor, check 2 @unpriv:OK
#382/49  verifier_sdiv/SDIV64, non-zero reg divisor, check 3:OK
#382/50  verifier_sdiv/SDIV64, non-zero reg divisor, check 3 @unpriv:OK
#382/51  verifier_sdiv/SDIV64, non-zero reg divisor, check 4:OK
#382/52  verifier_sdiv/SDIV64, non-zero reg divisor, check 4 @unpriv:OK
#382/53  verifier_sdiv/SDIV64, non-zero reg divisor, check 5:OK
#382/54  verifier_sdiv/SDIV64, non-zero reg divisor, check 5 @unpriv:OK
#382/55  verifier_sdiv/SDIV64, non-zero reg divisor, check 6:OK
#382/56  verifier_sdiv/SDIV64, non-zero reg divisor, check 6 @unpriv:OK
#382/57  verifier_sdiv/SMOD32, non-zero imm divisor, check 1:OK
#382/58  verifier_sdiv/SMOD32, non-zero imm divisor, check 1 @unpriv:OK
#382/59  verifier_sdiv/SMOD32, non-zero imm divisor, check 2:OK
#382/60  verifier_sdiv/SMOD32, non-zero imm divisor, check 2 @unpriv:OK
#382/61  verifier_sdiv/SMOD32, non-zero imm divisor, check 3:OK
#382/62  verifier_sdiv/SMOD32, non-zero imm divisor, check 3 @unpriv:OK
#382/63  verifier_sdiv/SMOD32, non-zero imm divisor, check 4:OK
#382/64  verifier_sdiv/SMOD32, non-zero imm divisor, check 4 @unpriv:OK
#382/65  verifier_sdiv/SMOD32, non-zero imm divisor, check 5:OK
#382/66  verifier_sdiv/SMOD32, non-zero imm divisor, check 5 @unpriv:OK
#382/67  verifier_sdiv/SMOD32, non-zero imm divisor, check 6:OK
#382/68  verifier_sdiv/SMOD32, non-zero imm divisor, check 6 @unpriv:OK
#382/69  verifier_sdiv/SMOD32, non-zero reg divisor, check 1:OK
#382/70  verifier_sdiv/SMOD32, non-zero reg divisor, check 1 @unpriv:OK
#382/71  verifier_sdiv/SMOD32, non-zero reg divisor, check 2:OK
#382/72  verifier_sdiv/SMOD32, non-zero reg divisor, check 2 @unpriv:OK
#382/73  verifier_sdiv/SMOD32, non-zero reg divisor, check 3:OK
#382/74  verifier_sdiv/SMOD32, non-zero reg divisor, check 3 @unpriv:OK
#382/75  verifier_sdiv/SMOD32, non-zero reg divisor, check 4:OK
#382/76  verifier_sdiv/SMOD32, non-zero reg divisor, check 4 @unpriv:OK
#382/77  verifier_sdiv/SMOD32, non-zero reg divisor, check 5:OK
#382/78  verifier_sdiv/SMOD32, non-zero reg divisor, check 5 @unpriv:OK
#382/79  verifier_sdiv/SMOD32, non-zero reg divisor, check 6:OK
#382/80  verifier_sdiv/SMOD32, non-zero reg divisor, check 6 @unpriv:OK
#382/81  verifier_sdiv/SMOD64, non-zero imm divisor, check 1:OK
#382/82  verifier_sdiv/SMOD64, non-zero imm divisor, check 1 @unpriv:OK
#382/83  verifier_sdiv/SMOD64, non-zero imm divisor, check 2:OK
#382/84  verifier_sdiv/SMOD64, non-zero imm divisor, check 2 @unpriv:OK
#382/85  verifier_sdiv/SMOD64, non-zero imm divisor, check 3:OK
#382/86  verifier_sdiv/SMOD64, non-zero imm divisor, check 3 @unpriv:OK
#382/87  verifier_sdiv/SMOD64, non-zero imm divisor, check 4:OK
#382/88  verifier_sdiv/SMOD64, non-zero imm divisor, check 4 @unpriv:OK
#382/89  verifier_sdiv/SMOD64, non-zero imm divisor, check 5:OK
#382/90  verifier_sdiv/SMOD64, non-zero imm divisor, check 5 @unpriv:OK
#382/91  verifier_sdiv/SMOD64, non-zero imm divisor, check 6:OK
#382/92  verifier_sdiv/SMOD64, non-zero imm divisor, check 6 @unpriv:OK
#382/93  verifier_sdiv/SMOD64, non-zero imm divisor, check 7:OK
#382/94  verifier_sdiv/SMOD64, non-zero imm divisor, check 7 @unpriv:OK
#382/95  verifier_sdiv/SMOD64, non-zero imm divisor, check 8:OK
#382/96  verifier_sdiv/SMOD64, non-zero imm divisor, check 8 @unpriv:OK
#382/97  verifier_sdiv/SMOD64, non-zero reg divisor, check 1:OK
#382/98  verifier_sdiv/SMOD64, non-zero reg divisor, check 1 @unpriv:OK
#382/99  verifier_sdiv/SMOD64, non-zero reg divisor, check 2:OK
#382/100 verifier_sdiv/SMOD64, non-zero reg divisor, check 2 @unpriv:OK
#382/101 verifier_sdiv/SMOD64, non-zero reg divisor, check 3:OK
#382/102 verifier_sdiv/SMOD64, non-zero reg divisor, check 3 @unpriv:OK
#382/103 verifier_sdiv/SMOD64, non-zero reg divisor, check 4:OK
#382/104 verifier_sdiv/SMOD64, non-zero reg divisor, check 4 @unpriv:OK
#382/105 verifier_sdiv/SMOD64, non-zero reg divisor, check 5:OK
#382/106 verifier_sdiv/SMOD64, non-zero reg divisor, check 5 @unpriv:OK
#382/107 verifier_sdiv/SMOD64, non-zero reg divisor, check 6:OK
#382/108 verifier_sdiv/SMOD64, non-zero reg divisor, check 6 @unpriv:OK
#382/109 verifier_sdiv/SMOD64, non-zero reg divisor, check 7:OK
#382/110 verifier_sdiv/SMOD64, non-zero reg divisor, check 7 @unpriv:OK
#382/111 verifier_sdiv/SMOD64, non-zero reg divisor, check 8:OK
#382/112 verifier_sdiv/SMOD64, non-zero reg divisor, check 8 @unpriv:OK
#382/113 verifier_sdiv/SDIV32, zero divisor:OK
#382/114 verifier_sdiv/SDIV32, zero divisor @unpriv:OK
#382/115 verifier_sdiv/SDIV64, zero divisor:OK
#382/116 verifier_sdiv/SDIV64, zero divisor @unpriv:OK
#382/117 verifier_sdiv/SMOD32, zero divisor:OK
#382/118 verifier_sdiv/SMOD32, zero divisor @unpriv:OK
#382/119 verifier_sdiv/SMOD64, zero divisor:OK
#382/120 verifier_sdiv/SMOD64, zero divisor @unpriv:OK
#382     verifier_sdiv:OK
Summary: 5/163 PASSED, 0 SKIPPED, 0 FAILED

As the selftests don't compile for 32-bit architectures without
modifications due to long being 32-bit,
I have added new tests to lib/test_bpf.c for cpuv4 insns, all are passing:

test_bpf: Summary: 1052 PASSED, 0 FAILED, [891/1040 JIT'ed]
test_bpf: test_tail_calls: Summary: 10 PASSED, 0 FAILED, [10/10 JIT'ed]
test_bpf: test_skb_segment: Summary: 2 PASSED, 0 FAILED

[1] https://lore.kernel.org/all/[email protected]/
====================

Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Alexei Starovoitov <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant