-
Notifications
You must be signed in to change notification settings - Fork 60
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
Kernel panic when syncing conntrack entries with conntrackd #176
Comments
Try without iptables emulation. |
I have try with only iptables-legacy , kernel panic too. [ 1415.927047] |
To find the place where the error occurs, I need the ndpi.o object file compiled with debugging information and the commit that was used for compilation. |
I have a guess about the reason for this error. "conntrackd" restores the value of "label" in which we store a pointer to our internal structures. If the guess is correct, then by fixing conntrackd (so that it does not restore the "label") you can get rid of kernel crashes. The fix will require significant code changes. |
I've got kernel panic too when trying to sync sessions with conntrackd.
I have loaded iptables rule with nDPI module and call Scheme of connections:
It is VRRP cluster stand with active/passive hubs. When one of the hubs fails, the other starts routing traffic. Could you please tell me what is needed to fix this problem? I'll try to follow your suggestion. |
I have a kernel panic when i try to sync conntrack entries to backup server with conntrackd when using xt_ndpi
kernel : 5.10.165
config NDPI
iptables -t mangle -A PREROUTING -m ndpi --proto all
iptables -t mangle -A PREROUTING -j NDPI --ndpi-id-p -set-mark
iptables -t mangle -A PREROUTING -j CONNMARK --save-mark --nfmask 0xffffffff --ctmask 0xffffffff
iptables -t mangle -A POSTROUTING -m ndpi --proto all
iptables -t mangle -A POSTROUTING -j NDPI --ndpi-id-p --set-mark
iptables -t mangle -A POSTROUTING -j CONNMARK --save-mark --nfmask 0xffffffff --ctmask 0xffffffff
Kernel panic:
[ 192.651772] ndpi_mt+0x931/0x1dd0 [xt_ndpi]
[ 192.656086] ? _raw_read_unlock+0x13/0x40
[ 192.660264] ? ndpi_mt+0x1f0/0x1dd0 [xt_ndpi]
[ 192.664785] ? put_cpu_partial+0xc5/0x120
[ 192.668841] ? _raw_spin_unlock+0xd/0x30
[ 192.672957] ? get_partial_node+0x123/0x3d0
[ 192.677273] ? _raw_spin_unlock_irqrestore+0xf/0x30
[ 192.682312] nft_match_large_eval+0x2c/0x60 [nft_compat]
[ 192.687769] nft_do_chain+0x17a/0x540 [nf_tables]
[ 192.692599] ? __local_bh_enable_ip+0x2e/0x80
[ 192.697136] ? ipt_do_table+0x3a1/0x710
[ 192.701143] ? nf_ct_get_tuple+0x1f9/0x230
[ 192.705449] ? sock_alloc_send_pskb+0x206/0x240
[ 192.710196] ? nf_conntrack_udp_packet+0x1e9/0x260
[ 192.715200] nf_route_table_hook4+0x96/0x130 [nf_tables]
[ 192.720763] nf_hook_slow+0x39/0xb0
[ 192.724361] __ip_local_out+0xea/0x170
[ 192.728232] ? ip_forward_options+0x190/0x190
[ 192.732704] ip_send_skb+0x19/0x70
[ 192.736198] udp_send_skb+0x14e/0x360
[ 192.740065] udp_sendmsg+0x9c5/0xc70
[ 192.743808] ? ip_frag_init+0x50/0x50
[ 192.747590] sock_sendmsg+0x58/0x80
[ 192.751233] __sys_sendto+0x129/0x190
[ 192.755025] __x64_sys_sendto+0x20/0x30
[ 192.758993] do_syscall_64+0x31/0x50
[ 192.762736] entry_SYSCALL_64_after_hwframe+0x61/0xc6
[ 192.768014] RIP: 0033:0x7f4a73ed9896
[ 192.771695] Code: 45 0c 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b8 0f 1f 00 41 89 ca 64 8b 04 25 18 00 00 00 85 c0 75 11 b8 2c 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 72 c3 90 55 48 83 ec 30 44 89 4c 24 2c 4c 89
[ 192.791127] RSP: 002b:00007ffe4e86c4f8 EFLAGS: 00000246 ORIG_RAX: 000000000000002c
[ 192.799048] RAX: ffffffffffffffda RBX: 000000000084d1d0 RCX: 00007f4a73ed9896
[ 192.806447] RDX: 0000000000000010 RSI: 000000000084cbe0 RDI: 0000000000000005
[ 192.813937] RBP: 0000000000000000 R08: 000000000084d1d4 R09: 0000000000000010
[ 192.821356] R10: 0000000000000000 R11: 0000000000000246 R12: 00007f4a73ddb6c8
[ 192.828706] R13: 0000000000852150 R14: 00000000ffffffff R15: 0000000000000000
[ 192.836118] Modules linked in: nfnetlink_queue iptable_mangle bpfilter pnvcomp(O) act_mirred act_connmark cls_u32 sch_ingress cls_fw sch_fq cls_bpf sch_fq_codel sch_htb ifb nft_dup_ipv4 nf_dup_ipv4 macvlan xt_ndpi(O) nf_conntrack_netl]
[ 192.911213] CR2: ffff88a30c91b444
[ 192.914671] ---[ end trace 36e2c44841d679ea ]---
[ 192.919367] RIP: 0010:_raw_spin_lock_bh+0x15/0x30
[ 192.924151] Code: 75 06 5d c3 cc cc cc cc 48 8d 7d 00 5d e9 63 ff 41 ff 0f 1f 00 55 48 8d 2f bf 01 02 00 00 e8 c2 f5 3f ff 31 c0 ba 01 00 00 00 0f b1 55 00 75 06 5d c3 cc cc cc cc 48 8d 7d 00 89 c6 5d e9 a2
[ 192.943174] RSP: 0018:ffffaa37819af708 EFLAGS: 00010246
[ 192.948486] RAX: 0000000000000000 RBX: ffffa188c9c4c000 RCX: 0000000000000000
[ 192.955713] RDX: 0000000000000001 RSI: 0000000000000018 RDI: 0000000000000201
[ 192.962950] RBP: ffff88a30c91b444 R08: 000000000000a55a R09: 0000000000000000
[ 192.970187] R10: ffffa188c9c4c0b4 R11: ffff88a30c91b444 R12: 0000000000000011
[ 192.977423] R13: ffffa188ca1e3600 R14: 0000000000000001 R15: 0000000000000000
[ 192.984653] FS: 00007f4a73ddb740(0000) GS:ffffa18c1ec80000(0000) knlGS:0000000000000000
[ 192.992833] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 192.998648] CR2: ffff88a30c91b444 CR3: 0000000182826003 CR4: 00000000003706e0
[ 193.005868] Kernel panic - not syncing: Fatal exception in interrupt
[ 193.012533] Kernel Offset: 0x3a000000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)
The text was updated successfully, but these errors were encountered: