NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/55682: siisata sometimes-panic when starting smartd



>Number:         55682
>Category:       kern
>Synopsis:       siisata sometimes-panic when starting smartd
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Sep 25 03:25:00 +0000 2020
>Originator:     Jason Thorpe
>Release:        NetBSD 9.99.72
>Organization:
RISCy Business
>Environment:
NetBSD 9.99.72 on AlphaServer DS25 with SiI3124 SATALink
>Description:
On a test system, I am encountering the following sometimes-panic in the siisata driver that seems to correlate with starting "smartd" from pkgsrc:

Starting smartd.

[  47.7250657] CPU 0: fatal kernel trap:

[  47.7709518] CPU 0    trap entry = 0x2 (memory management fault)
[  47.8416749] CPU 0    a0         = 0x0
[  47.8853576] CPU 0    a1         = 0x1
[  47.9290421] CPU 0    a2         = 0x0
[  47.9727239] CPU 0    pc         = 0xfffffc0000b4b050
[  48.0320077] CPU 0    ra         = 0xfffffc0000b4b048
[  48.0912910] CPU 0    pv         = 0xfffffc0000a0c8c0
[  48.1505756] CPU 0    curlwp     = 0xfffffc02ff748040
[  48.2098597] CPU 0        pid = 0, comm = system
[  48.2660230] panic: trap
[  48.2951453] cpu0: Begin traceback...
[  48.3377872] alpha trace requires known PC =eject=
[  48.3939513] cpu0: End traceback...
Stopped in pid 0.2 (system) at  netbsd:cpu_Debugger+0x4:        ret     zero,(ra)
db{0}> bt
cpu_Debugger() at netbsd:cpu_Debugger+0x4
db_panic() at netbsd:db_panic+0xc8
vpanic() at netbsd:vpanic+0x10c
panic() at netbsd:panic+0x58
trap() at netbsd:trap+0xc28
XentMM() at netbsd:XentMM+0x20
--- memory management fault (from ipl 4) ---
siisata_intr_port() at netbsd:siisata_intr_port+0x3c0
siisata_intr() at netbsd:siisata_intr+0x94
alpha_shared_intr_wrapper() at netbsd:alpha_shared_intr_wrapper+0x38
alpha_shared_intr_dispatch() at netbsd:alpha_shared_intr_dispatch+0x5c
alpha_pci_generic_iointr() at netbsd:alpha_pci_generic_iointr+0x40
interrupt() at netbsd:interrupt+0x268
XentInt() at netbsd:XentInt+0x1c
--- interrupt (from ipl 0) ---
kpreempt_enable() at netbsd:kpreempt_enable+0x18
sched_curcpu_runnable_p() at netbsd:sched_curcpu_runnable_p+0x38
idle_loop() at netbsd:idle_loop+0x1d4
--- kernel thread backstop ---
db{0}>

The fault indicates a read fault at 0x0.

The faulting PC coresponds to siisata.c:548:

                                /* read in specific information about error */
                                uint32_t prbfis = bus_space_read_stream_4(
                                    sc->sc_prt, sc->sc_prh,
                                    PRSX(chp->ch_channel, xfer->c_slot,
                                    PRSO_FIS));


Drives are:

[     4.961746] wd0 at atabus2 drive 0
[     5.003739] wd0: <Samsung SSD 850 EVO 500GB>

[     5.153153] wd1 at atabus3 drive 0
[     5.193192] wd1: <Samsung SSD 850 EVO 500GB>

[     5.342607] wd2 at atabus4 drive 0
[     5.385575] wd2: <ST4000LM024-2AN17V>

[     6.008626] wd3 at atabus5 drive 0
[     6.049641] wd3: <ST4000LM024-2AN17V>

>How-To-Repeat:
Not a 100% reproducible case, but start "smartd" on a system with the drives listed above connected to an "siisata"?

>Fix:
Not known.



Home | Main Index | Thread Index | Old Index