Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 May 2021 19:25:24 +0200
From:      Marc Veldman <marc@bumblingdork.com>
To:        Henri Hennebert <hlh@restart.be>
Cc:        "lev@freebsd.org" <lev@FreeBSD.org>, freebsd-current@freebsd.org
Subject:   Re: CURRENT crashes at early boot on Lenovo T540p: rtsx to blame - 13.0-RELEASE crashes same way!
Message-ID:  <FB505789-D89C-4BA8-A3AE-8352CDBF0556@bumblingdork.com>
In-Reply-To: <7eb763ce-0bbf-9baf-2ede-968ee25cff2e@restart.be>
References:  <a7363387-c53f-d6c0-acc0-be9081590ea1@FreeBSD.org> <b72d8b9d-8cfd-84a7-59b2-c5a2b33416e7@FreeBSD.org> <20210512141130.755ae361@ernst.home> <D9843F30-308D-4F9F-A229-05639346564A@bumblingdork.com> <9f0abf48-ed13-bff3-5687-fca0d57195d8@restart.be> <C4E25C70-25BA-4BEB-83F0-D77279B2B94A@bumblingdork.com> <8d4e076b-9ecd-aef2-0ee8-73519bb9d939@FreeBSD.org> <8d2be5f2-4144-082e-4237-0dac0c4b37e6@restart.be> <f084b1c8-5020-2db9-6cf3-47641066bb69@FreeBSD.org> <6798878a-c499-d78d-e96d-d744513cb80d@restart.be> <a630c8a3-a9d7-c6f5-111c-be0e64db1ec6@FreeBSD.org> <1de588e2-20cb-3206-3aea-f3f88f577675@restart.be> <c324501a-6a8e-f8aa-3ecd-e8d7d3485e2c@FreeBSD.org> <e20d2d7d-8584-bb6b-465d-83a5b63f8210@restart.be> <67f0874a-6a05-67f1-3f2b-c4b3dc67fa11@FreeBSD.org> <83b823bf-c6c2-2f6a-b5dd-2e91b4d1931e@restart.be> <2c208bbc-5adc-2327-4717-a5e7c8d64b4b@FreeBSD.org> <9a15daa7-2b17-e257-d4d1-850c632a9db8@restart.be> <417a97b9-2c40-310c-c445-b193c493b880@FreeBSD.org> <7eb763ce-0bbf-9baf-2ede-968ee25cff2e@restart.be>

index | next in thread | previous in thread | raw e-mail



> On 13 May 2021, at 17:56, Henri Hennebert <hlh@restart.be> wrote:
> 
> On 5/13/21 5:51 PM, Lev Serebryakov wrote:
>> On 13.05.2021 18:38, Henri Hennebert via freebsd-current wrote:
>>> This seems a good news.
>>> 
>>> Can you replace sys/dev/rtsx.c by the latest version (2.0g) from
>>> https://github.com/hlh-restart/rtsx
>>> 
>>> I reduce the DELAY to 250000 and make some other updates waiting in the pipeline.
>> I've replaced two files in /usr/src/sys/dev/rtsx, rebuilt GENERIC kernel and it boots!
>>  Output WITHOUT card is like this:
>> pci2: <ACPI PCI bus> on pcib2
>> rtsx0: <2.0g Realtek RTS5227 PCI MMC/SD Card Reader> mem 0xf4500000-0xf4500fff at device 0.0 on pci2
>> rtsx0: We are running with inversion: 0
>> rtsx0: Interrupt card inserted/removed
>> rtsx0: Card absent
>> rtsx0: No card is detected
>> pcib3: <ACPI PCI-PCI bridge> at device 28.1 on pci0
>>  Output WITH card is like this:
>> pci2: <ACPI PCI bus> on pcib2
>> rtsx0: <2.0g Realtek RTS5227 PCI MMC/SD Card Reader> mem 0xf4500000-0xf4500fff at device 0.0 on pci2
>> rtsx0: We are running with inversion: 0
>> rtsx0: Interrupt card inserted/removed
>> rtsx0: Card present
>> rtsx0: A card is detected
>> mmc0: <MMC/SD bus> on rtsx0
>> pcib3: <ACPI PCI-PCI bridge> at device 28.1 on pci0
>> ...
>> mmcsd0: 16GB <SDHC SDC   1.0 SN 0000056F MFG 01/2012 by 116 JE> at mmc0 50.0MHz/4bit/2048-block
>> ...
>>  No visible delays in both cases.
>>  Both boots are "cold", with AC cycle
> So if I understand correctly, your problem is solved.
> 

On my laptop (Lenovo P50s) the laptop now boots fine with and without the
card inserted, but it panics immediately on insertion or removal of the card,
unfortunately.


1)

#dev.rtsx.0.inversion=“1"

commented out in boot/loader.conf.

1.a)

Booting with the card works.
When I remove the card a few minutes after boot I get a panic:

Unread portion of the kernel message buffer:
rtsx0: Interrupt card inserted/removed
rtsx0: Card present
panic: mutex Giant not owned at /usr/src/sys/kern/subr_bus.c:2944
cpuid = 3
time = 1620924849
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe00c6780910
vpanic() at vpanic+0x181/frame 0xfffffe00c6780960
panic() at panic+0x43/frame 0xfffffe00c67809c0
__mtx_assert() at __mtx_assert+0xb0/frame 0xfffffe00c67809d0
device_probe_and_attach() at device_probe_and_attach+0x2a/frame 0xfffffe00c6780a00
taskqueue_run_locked() at taskqueue_run_locked+0xaa/frame 0xfffffe00c6780a80
taskqueue_thread_loop() at taskqueue_thread_loop+0x94/frame 0xfffffe00c6780ab0
fork_exit() at fork_exit+0x80/frame 0xfffffe00c6780af0
fork_trampoline() at fork_trampoline+0xe/frame 0xfffffe00c6780af0
--- trap 0, rip = 0, rsp = 0, rbp = 0 —

1.b)
Booting without the card works, when I insert the card I get the same panic.

2)
With ndev.rtsx.0.inversion="1"

Now enabled in /boot/loader.conf

2a)
Booting with the card inserted works, but when I remove the card I get the above panic.

2b)
Booting without the card inserted works, but when Insert the card I get the above panic. 

> I will push this new version to current, but it will take some time because I am not a committer.
> 

A minor thing about the patch/change.
I suspect the delay is a quarter of a second, not half as stated in the comments.

Again, thank you very much for your work on this!

Best regards,

Marc Veldman



help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FB505789-D89C-4BA8-A3AE-8352CDBF0556>