On 22.7.2021. 0:39, Alexander Bluhm wrote: > On Thu, Jul 22, 2021 at 12:06:09AM +0200, Hrvoje Popovski wrote: >> I'm combining this and last parallel diff and i can't see any drops in >> traffic. Even sending at high rate, traffic through iked or isakmpd is >> stable at 150Kpps, which is good .. > > Thanks, good news. > >> One funny thing is that with top -SHs1 crypto CPU usage is always at 0.00% >> Could it be because of aes-ni? > > I don't use the crypto thread anymore. It is idle. All crypto is > done in softnet between handling the network part of ipsec. > > Here is the flame graph. Crypto is running on top of network. > http://bluhm.genua.de/perform/results/current/patch-sys-ipsec-noqueue.1/btrace/ssh_perform%40lt13_iperf3_-c10.4.56.36_-P10_-t10-btrace-kstack.0.svg > > bluhm >
Thank you for explanation.. after hitting box all night, box panic and i was able to reproduce it this morning ... I'm not sure but box panic after hour or more of sending traffic through iked tunnel .. I will try to reproduce it through ipsec tunnel .. r620-1# uvm_fault(0xffffffff821a82d8, 0x137, 0, 2) -> e kernel: page fault trap, code=0 Stopped at tdb_free+0x9c: movq %rsi,0(%rdi) TID PID UID PRFLAGS PFLAGS CPU COMMAND *310284 77290 0 0x14000 0x200 1K softnet tdb_free(ffff8000011832a8) at tdb_free+0x9c esp_output(fffffd80a5c2f300,ffff8000011832a8,0,14,9) at esp_output+0x44f ipsp_process_packet(fffffd80a5c2f300,ffff8000011832a8,2,0) at ipsp_process_packet+0x466 ip_output_ipsec_send(ffff8000011832a8,fffffd80a5c2f300,ffff800023871cf8,1) at ip_output_ipsec_send+0x161 ip_output(fffffd80a5c2f300,0,ffff800023871cf8,1,0,0) at ip_output+0x8bd ip_forward(fffffd80a5c2f300,ffff800000087048,fffffd83b3454bd0,0) at ip_forward+0x26a ip_input_if(ffff800023871e38,ffff800023871e44,4,0,ffff800000087048) at ip_input_if+0x353 ipv4_input(ffff800000087048,fffffd80a5c2f300) at ipv4_input+0x39 if_input_process(ffff800000087048,ffff800023871eb8) at if_input_process+0x92 ifiq_process(ffff800000086c00) at ifiq_process+0x69 taskq_thread(ffff80000002f200) at taskq_thread+0x81 end trace frame: 0x0, count: 4 https://www.openbsd.org/ddb.html describes the minimum info required in bug reports. Insufficient info makes it difficult to find and fix bugs. ddb{1}> ps PID TID PPID UID S FLAGS WAIT COMMAND 94310 423919 1 0 3 0x100083 ttyin ksh 77465 202466 1 0 3 0x100098 poll cron 65594 481620 35139 95 3 0x100092 kqread smtpd 2326 44364 35139 103 3 0x100092 kqread smtpd 1225 215234 35139 95 3 0x100092 kqread smtpd 69590 400378 35139 95 3 0x100092 kqread smtpd 7267 26043 35139 95 3 0x100092 kqread smtpd 38120 331881 35139 95 3 0x100092 kqread smtpd 35139 66391 1 0 3 0x100080 kqread smtpd 79402 86611 1 0 3 0x88 select sshd 43297 495028 53834 101 3 0x100010 netlock iked 73854 239338 53834 101 3 0x100090 kqread iked 79322 243271 53834 101 3 0x100090 kqread iked 53834 169269 1 0 3 0x100080 kqread iked 98497 240479 1 0 3 0x100080 poll ntpd 93883 433035 46155 83 3 0x100092 poll ntpd 46155 241594 1 83 3 0x100092 poll ntpd 60135 75740 14081 73 3 0x100090 kqread syslogd 14081 390346 1 0 3 0x100082 netio syslogd 95646 201039 0 0 3 0x14200 bored smr 54746 191914 0 0 3 0x14200 pgzero zerothread 42039 120601 0 0 3 0x14200 aiodoned aiodoned 23202 404058 0 0 3 0x14200 syncer update 32492 255945 0 0 3 0x14200 cleaner cleaner 63792 183728 0 0 3 0x14200 reaper reaper 85251 251516 0 0 3 0x14200 pgdaemon pagedaemon 70650 399091 0 0 3 0x14200 bored crynlk 93527 443884 0 0 3 0x14200 bored crypto 98145 39889 0 0 3 0x14200 usbtsk usbtask 67334 434779 0 0 3 0x14200 usbatsk usbatsk 86238 520690 0 0 3 0x40014200 acpi0 acpi0 52180 314140 0 0 7 0x40014200 idle5 23611 433449 0 0 7 0x40014200 idle4 40949 492122 0 0 7 0x40014200 idle3 1758 355637 0 0 7 0x40014200 idle2 24269 99037 0 0 3 0x40014200 idle1 26630 422993 0 0 3 0x14200 bored sensors *77290 310284 0 0 7 0x14200 softnet 68084 469615 0 0 3 0x14200 bored softnet 68120 339291 0 0 3 0x14200 bored softnet 90122 1101 0 0 3 0x14200 netlock softnet 4721 339211 0 0 3 0x14200 bored systqmp 19922 57880 0 0 3 0x14200 bored systq 67069 141786 0 0 3 0x40014200 netlock softclock 34327 87131 0 0 7 0x40014200 idle0 1 97004 0 0 3 0x82 wait init 0 0 -1 0 3 0x10200 scheduler swapper ddb{1}> trace /t 0t310284 ip_input_if(ffff800023871e38,ffff800023871e44,4,0,ffff800000087048) at ip_input_if+0x353 ipv4_input(ffff800000087048,fffffd80a5c2f300) at ipv4_input+0x39 if_input_process(ffff800000087048,ffff800023871eb8) at if_input_process+0x92 ifiq_process(ffff800000086c00) at ifiq_process+0x69 taskq_thread(ffff80000002f200) at taskq_thread+0x81 end trace frame: 0x0, count: -5 ddb{1}>