On Thu, 13 May 2021 20:55:20 +0300 Lev Serebryakov <lev_at_FreeBSD.org> wrote: > On 13.05.2021 18:56, Henri Hennebert wrote: > > > So if I understand correctly, your problem is solved. > Stupid me. I didn't check card insertion/removal after boot. > > Card REMOVAL when boot was WITH CARD: > Instant panic: > > rtsx0: Interrupt card inserted/removed > rtsx0: Card absent > panic: mutex Giant not owned at /usr/src/sys/kern/subr_bus.c:3045 > cpuid = 3 > time = 1620928154 > KDB: stack backtrace: > db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe00c6a989c0 > vpanic() at vpanic+0x181/frame 0xfffffe00c6a98a10 > panic() at panic+0x43/frame 0xfffffe00c6a98a70 > __mtx_assert() at __mtx_assert+0xb0/frame 0xfffffe00c6a98a80 > device_detach() at device_detach+0x2e/frame 0xfffffe00c6a98ac0 > device_delete_child() at device_delete_child+0x15/frame 0xfffffe00c6a98ae0 > rtsx_card_task() at rtsx_card_task+0xfa/frame 0xfffffe00c6a98b00 > taskqueue_run_locked() at taskqueue_run_locked+0xaa/frame 0xfffffe00c6a98b80 > taskqueue_thread_loop() at taskqueue_thread_loop+0x94/frame 0xfffffe00c6a98bb0 > fork_exit() at fork_exit+0x80/frame 0xfffffe00c6a98bf0 > fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe00c6a98bf0 > --- trap 0, rip = 0, rsp = 0, rbp = 0 --- > KDB: enter: panic > > Card INSERTION when boot was WITHOUT CARD: > Instant panic: > > rtsx0: Interrupt card inserted/removed > rtsx0: Card present > panic: mutex Giant not owned at /usr/src/sys/kern/subr_bus.c:2944 > cpuid = 1 > time = 1620928312 > KDB: stack backtrace: > db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe00c6a98a10 > vpanic() at vpanic+0x181/frame 0xfffffe00c6a98a60 > panic() at panic+0x43/frame 0xfffffe00c6a98ac0 > __mtx_assert() at __mtx_assert+0xb0/frame 0xfffffe00c6a98ad0 > device_probe_and_attach() at device_probe_and_attach+0x2a/frame 0xfffffe00c6a98b00 > taskqueue_run_locked() at taskqueue_run_locked+0xaa/frame 0xfffffe00c6a98b80 > taskqueue_thread_loop() at taskqueue_thread_loop+0x94/frame 0xfffffe00c6a98bb0 > fork_exit() at fork_exit+0x80/frame 0xfffffe00c6a98bf0 > fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe00c6a98bf0 > --- trap 0, rip = 0, rsp = 0, rbp = 0 --- > KDB: enter: panic > > Both panics are "debuggable", as keyboard is working in ddb and crash dump could be created. And I'm not sure, that GIANT in 2021 is good thing. > Yeah, I was wondering about that myself when looked at the code today. The driver was originally developed when current was what is now 12 or 13, I think. Might be worth looking at dwmmc.c (where I got the card insertion/removal code) to see whether there are any recent changes there. -- Gary JennejohnReceived on Thu May 13 2021 - 16:52:09 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:28 UTC