On 1.6.2022. 11:21, Jan Klemkow wrote:
> I moved the switch to ifconfig(8) in the diff below.
> 
> # ifconfig ix0 tso
> # ifconfig ix0 -tso
> 
> I named it tso (TCP segment offloading), so I can reuse this switch
> also for the sending part.  TSO is the combination of LRO and LSO.
> 
> LRO: Large Receive Offloading
> LSO: Large Send Offloading
> 
> RSC (Receive Side Coalescing) is an alternative term for LRO, which is
> used by the spec of ix(4) NICs.
> 
>>> Tests with other ix(4) NICs are welcome and needed!
>> We'll try and kick it around at work in the next week or so.

Hi all,

I've put this diff in production on clean source from this morning and
got panic. I'm not 100% sure if it's because of TSO because in a last
monts i had all kinds of diffs on production boxes.
Now I will run spanshot maybe clean spanshot will panic :))

I've couldn't trigger panic with TSO diff in lab ..


panic:

bcbnfw1# panic: kernel diagnostic assertion "m->m_len >= ETHER_HDR_LEN"
failed: file "/sys/net/bpf.c", line 1489
Stopped at      db_enter+0x10:  popq    %rbp
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
 444766  59724      0     0x14000      0x200    1  softnet
db_enter() at db_enter+0x10
panic(ffffffff81f25898) at panic+0xbf
__assert(ffffffff81f99ec1,ffffffff81fd1b33,5d1,ffffffff81f465eb) at
__assert+0x25
bpf_mtap_ether(ffff800000489600,fffffd80610e0f00,1) at bpf_mtap_ether+0xef
ifiq_input(ffff80000048eb00,ffff800020b59b10) at ifiq_input+0xf3
ixgbe_rxeof(ffff80000048d3a0) at ixgbe_rxeof+0x32b
ixgbe_queue_intr(ffff80000048ab00) at ixgbe_queue_intr+0x3c
intr_handler(ffff800020b59c50,ffff80000045dd00) at intr_handler+0x6e
Xintr_ioapic_edge0_untramp() at Xintr_ioapic_edge0_untramp+0x18f
acpicpu_idle() at acpicpu_idle+0x203
sched_idle(ffff800020892ff0) at sched_idle+0x280
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{2}>


ddb{2}> show reg
rdi                                0
rsi                             0x14
rbp               0xffff800020b59930
rbx               0xfffffd80610e0f00
rdx               0xc800000000000000
rcx                            0x282
rax                             0x68
r8                 0x101010101010101
r9                                 0
r10               0xd410e1bbe041370a
r11               0xff1c7218c30edf0a
r12               0xffff800020893a60
r13               0xffff800020b59a90
r14                                0
r15               0xffffffff81f25898    cmd0646_9_tim_udma+0x29032
rip               0xffffffff81813a30    db_enter+0x10
cs                               0x8
rflags                         0x286
rsp               0xffff800020b59930
ss                              0x10
db_enter+0x10:  popq    %rbp


ddb{2}> ps
   PID     TID   PPID    UID  S       FLAGS  WAIT          COMMAND
 58540  192000  34045      0  3    0x100083  ttyin         ksh
 34045  380261  43095   1000  3    0x10008b  sigsusp       ksh
 43095  382180  79096   1000  3        0x98  kqread        sshd
 79096  410005  83400      0  3        0x82  kqread        sshd
 67346  388175      1      0  3    0x100083  ttyin         ksh
  1576  379710      1      0  3    0x100098  kqread        cron
 80308  475205  63710    720  3   0x1000090  kqread        lldpd
 63710  264590      1      0  3        0x80  netio         lldpd
 70690  148684  79519     95  3   0x1100092  kqread        smtpd
 96229  368855  79519    103  3   0x1100092  kqread        smtpd
 57602  230927  79519     95  3   0x1100092  kqread        smtpd
 27959  412218  79519     95  3    0x100092  kqread        smtpd
 68321  253958  79519     95  3   0x1100092  kqread        smtpd
 15048  386230  79519     95  3   0x1100092  kqread        smtpd
 79519   40897      1      0  3    0x100080  kqread        smtpd
 81998   89562      1     77  3   0x1100090  kqread        dhcpd
 30223   19018      1      0  3    0x100080  kqread        snmpd
 16185  104619      1     91  3   0x1000092  kqread        snmpd
 83400  393345      1      0  3        0x88  kqread        sshd
 59135   14654      1      0  3    0x100080  kqread        ntpd
 93144  455149  50136     83  3    0x100092  kqread        ntpd
 50136  231167      1     83  3   0x1100092  kqread        ntpd
 26285  193609  59081     74  3   0x1100092  bpf           pflogd
 59081  514111      1      0  3        0x80  netio         pflogd
 90237  222054  74741     73  3   0x1100090  kqread        syslogd
 74741   91812      1      0  3    0x100082  netio         syslogd
 50581  332657      0      0  3     0x14200  bored         smr
 11773  152326      0      0  3     0x14200  pgzero        zerothread
 45553   54153      0      0  3     0x14200  aiodoned      aiodoned
 31391  475879      0      0  3     0x14200  syncer        update
 44830  301726      0      0  3     0x14200  cleaner       cleaner
 62337   61034      0      0  3     0x14200  reaper        reaper
 97528  277547      0      0  3     0x14200  pgdaemon      pagedaemon
  8642  410255      0      0  3     0x14200  usbtsk        usbtask
 60253  392680      0      0  3     0x14200  usbatsk       usbatsk
 67488  412772      0      0  3  0x40014200  acpi0         acpi0
 78574  213151      0      0  7  0x40014200                idle5
 38532  257511      0      0  7  0x40014200                idle4
  2995  160082      0      0  7  0x40014200                idle3
*61107  266595      0      0  7  0x40014200                idle2
 61648  111464      0      0  3  0x40014200                idle1
 73357  179412      0      0  3     0x14200  bored         sensors
   795  291032      0      0  3     0x14200  bored         softnet
 64195   36622      0      0  3     0x14200  bored         softnet
 18139  172154      0      0  2     0x14200                softnet
 59724  444766      0      0  7     0x14200                softnet
 65453  160263      0      0  3     0x14200  bored         systqmp
 60584  441650      0      0  3     0x14200  bored         systq
 32410  154196      0      0  3  0x40014200  bored         softclock
 34259  356840      0      0  7  0x40014200                idle0
     1  235309      0      0  3        0x82  wait          init
     0       0     -1      0  3     0x10200  scheduler     swapper

ddb{2}> ps /o
    TID    PID    UID     PRFLAGS     PFLAGS  CPU  COMMAND
 444766  59724      0     0x14000      0x200    1  softnet

ddb{2}> trace /t 0t444766
end trace frame: 0x0, count: -1
ddb{2}>


ddb{2}> mach ddbcpu 0
Stopped at      x86_ipi_db+0x12:        leave
x86_ipi_db(ffffffff822a0ff0) at x86_ipi_db+0x12
x86_ipi_handler() at x86_ipi_handler+0x80
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x23
_kernel_lock() at _kernel_lock+0xa0
softintr_dispatch(0) at softintr_dispatch+0x49
Xsoftclock() at Xsoftclock+0x1f
acpicpu_idle() at acpicpu_idle+0x203
sched_idle(ffffffff822a0ff0) at sched_idle+0x280
end trace frame: 0x0, count: 7


ddb{0}> mach ddbcpu 1
Stopped at      x86_ipi_db+0x12:        leave
x86_ipi_db(ffff800020889ff0) at x86_ipi_db+0x12
x86_ipi_handler() at x86_ipi_handler+0x80
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x23
_kernel_lock() at _kernel_lock+0xa0
ether_resolve(ffff800000bd5000,fffffd80713d6b00,ffff80000147e1d0,fffffd887d6b53
30,ffff800020b32ea8) at ether_resolve+0x1ad
ether_output(ffff800000bd5000,fffffd80713d6b00,ffff80000147e1d0,fffffd887d6b5330)
at ether_output+0x2c
ip_output(fffffd80713d6b00,0,ffff800020b33128,1,0,0,3b3b3b29baa99d66) at
ip_output+0xaec
ip_forward(fffffd80713d6b00,ffff800000bc0800,fffffd887d6b5330,0) at
ip_forward+0x2da
ip_input_if(ffff800020b33268,ffff800020b33274,4,0,ffff800000bc0800) at
ip_input_if+0x353
ipv4_input(ffff800000bc0800,fffffd80650c7500) at ipv4_input+0x39
ether_input(ffff800000bc0800,fffffd80650c7500) at ether_input+0x3ad
carp_input(ffff800000bd7800,fffffd80650c7500,5e00010d) at carp_input+0x196
ether_input(ffff800000bd7800,fffffd80650c7500) at ether_input+0x1d9
vlan_input(ffff800000ba1000,fffffd80650c7500,ffff800020b3349c) at
vlan_input+0x23d
end trace frame: 0xffff800020b334e0, count: 0


ddb{1}> mach ddbcpu 2
Stopped at      db_enter+0x10:  popq    %rbp
db_enter() at db_enter+0x10
panic(ffffffff81f25898) at panic+0xbf
__assert(ffffffff81f99ec1,ffffffff81fd1b33,5d1,ffffffff81f465eb) at
__assert+0x25
bpf_mtap_ether(ffff800000489600,fffffd80610e0f00,1) at bpf_mtap_ether+0xef
ifiq_input(ffff80000048eb00,ffff800020b59b10) at ifiq_input+0xf3
ixgbe_rxeof(ffff80000048d3a0) at ixgbe_rxeof+0x32b
ixgbe_queue_intr(ffff80000048ab00) at ixgbe_queue_intr+0x3c
intr_handler(ffff800020b59c50,ffff80000045dd00) at intr_handler+0x6e
Xintr_ioapic_edge0_untramp() at Xintr_ioapic_edge0_untramp+0x18f
acpicpu_idle() at acpicpu_idle+0x203
sched_idle(ffff800020892ff0) at sched_idle+0x280
end trace frame: 0x0, count: 4


ddb{2}> mach ddbcpu 3
Stopped at      x86_ipi_db+0x12:        leave
x86_ipi_db(ffff80002089bff0) at x86_ipi_db+0x12
x86_ipi_handler() at x86_ipi_handler+0x80
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x23
acpicpu_idle() at acpicpu_idle+0x203
sched_idle(ffff80002089bff0) at sched_idle+0x280
end trace frame: 0x0, count: 10


ddb{3}> mach ddbcpu 4
Stopped at      x86_ipi_db+0x12:        leave
x86_ipi_db(ffff8000208a4ff0) at x86_ipi_db+0x12
x86_ipi_handler() at x86_ipi_handler+0x80
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x23
acpicpu_idle() at acpicpu_idle+0x203
sched_idle(ffff8000208a4ff0) at sched_idle+0x280
end trace frame: 0x0, count: 10


ddb{4}> mach ddbcpu 5
Stopped at      x86_ipi_db+0x12:        leave
x86_ipi_db(ffff8000208adff0) at x86_ipi_db+0x12
x86_ipi_handler() at x86_ipi_handler+0x80
Xresume_lapic_ipi() at Xresume_lapic_ipi+0x23
acpicpu_idle() at acpicpu_idle+0x203
sched_idle(ffff8000208adff0) at sched_idle+0x280
end trace frame: 0x0, count: 10
ddb{5}>

Reply via email to