> On May 21, 2020, at 7:04 PM, Jonathon Fletcher
> <[email protected]> wrote:
>
>
>> On May 21, 2020, at 12:39 AM, Kevin Lo <[email protected]> wrote:
>>
>> On Tue, May 19, 2020 at 09:52:57AM -0700, Jonathon Fletcher wrote:
>>>
>>>
>>>> Synopsis: ure RTL8153 panics on 6.7 - was stable on 6.6
>>>
>>>> Environment:
>>> System : OpenBSD 6.7
>>> Details : OpenBSD 6.7 (GENERIC.MP) #1: Sat May 16 16:33:02 MDT 2020
>>>
>>> [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
>>>
>>> Architecture: OpenBSD.amd64
>>> Machine : amd64
>>>
>>>> Description:
>>> ** PRELIMINARY BUG REPORT - INCOMPLETE INFO **
>>>
>>> USB ure with RTL8153 on 6.7 panics. Same hardware stable on 6.6.
>>>
>>> ure0 at uhub0 port 14 configuration 1 interface 0 "Realtek USB 10/100/1000
>>> LAN" rev 3.00/30.00 addr 5
>>> ure0: RTL8153 (0x5c30), address a0:ce:c8:cd:ba:d1
>>> rgephy0 at ure0 phy 0: RTL8251 PHY, rev. 0
>>>
>>> Under load (estimated 50MB/s for approximate 5 minutes), kernel panics:
>
> ...
>
>>> Aside:
>>>
>>> Same panic occurred with RTL8156 - first 6.7 panic. After that I reverted
>>> to the RTL8153 above in case panic was limited to the newly-supported
>>> hardware.
>>>
>>> ure0 at uhub0 port 14 configuration 1 interface 0 "Realtek USB
>>> 10/100/1G/2.5G LAN" rev 3.20/30.00 addr 5
>>> ure0: RTL8156 (0x7030), address 00:e0:4c:ab:64:5a
>>
>> Thanks for the report. Could you test this diff? Thanks.
>
> Thank you for the quick patch.
>
> I have run this at 40-50MB/s for ~20mins for both RTL8153 and RTL8156.
>
> No panic with your patch.
>
> I am going to leave it running with the RTL8156 and will send an update if I
> see any problems.
Kevin,
This happened with the patch applied and using the RTL8156.
Same dmesg as original report.
assertwaitok: non-zero mutex count: 1
Stopped at db_enter+0xl0: popq %rbp
TID PID UID PRFLRGS PFLAGS CPU COMMAND
db_enter() at db_enter+0xl0
panic(ffffffff81c8e578) at panic+0xl28
assertwaitok() at assertwaitok+0xc7
mi_suitch() at mi_switch+0x40
sleep_finish(ffff800022e81148,1) at sleep_finish+0x84
sleep_finish_all(ffff800022e81148,l) at sleep_finish_al1+0x21
tsleep(fffffd84465a24b0,10,ffffffff81c9bd4f,0) at tsleep+0xd6
usbd_transfer(fffffd84465a24b0) at usbd_transfer+0x204
usbd_do_request_flags(ffff80000052d500,ffff800022e812a0,ffff800022e8129c,0,0,1388)
at usbd_do_request_flags+0x139
ure_reset(ffff800000533000) at ure_reset+0x5e
ure_stop(ffff800000533000) at ure_stop+0x21
ure_encap(ffff800000533000,fffffd808ecf9800,5) at ure_encap+0xf6
ure_start(ffff8000005330d0) at ure_start+0x98
if_qstart_compat(ffff800000533348) at if_qstart_compat+0x2e
end trace frame: 0xffff800022e81450, count: 0
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}>
Thanks,
Jonathon