Re: ACPI scan regression -> Boot fail on Cherrytrail w/ 5.11-rc3

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

 



On Friday, January 15, 2021 1:49:17 AM CET Pierre-Louis Bossart wrote:
> Thanks Hans for your reply, much appreciated.
> 
> > Pierre-Louis, can you see if the following hack helps? :
> > 
> > --- a/drivers/acpi/scan.c
> > +++ b/drivers/acpi/scan.c
> > @@ -1939,7 +1939,6 @@ static acpi_status acpi_bus_check_add(acpi_handle handle, bool check_dep,
> >   		/* Bail out if the number of recorded dependencies is not 0. */
> >   		if (count > 0) {
> >   			acpi_bus_scan_second_pass = true;
> > -			return AE_CTRL_DEPTH;
> >   		}
> >   	}
> >   
> > @@ -1948,8 +1947,7 @@ static acpi_status acpi_bus_check_add(acpi_handle handle, bool check_dep,
> >   		return AE_CTRL_DEPTH;
> >   
> >   	acpi_scan_init_hotplug(device);
> > -	if (!check_dep)
> > -		acpi_scan_dep_init(device);
> > +	acpi_scan_dep_init(device);
> >   
> >   out:
> >   	if (!*adev_p)
> 
> Yep, those 'hacks' solve the boot problem on my device. I tried multiple 
> times and it's completely reproducible.
> 
> > And can you collect an acpidump from the device and either send it to me and Rafael
> > offlist, or upload it somewhere and send us a link ?
> 
> will do

In addition to what Hans asked for, can you please build the kernel with the
debug patch below applied (instead of the Hans' debug patch), try to boot
the affected machine with it and see what is missing with respect to booting
the kernel with the two problematic commits reverted?

Also please send me the outout of "dmesg | grep "Enumeration" from the debug
kernel if possible.

---
 drivers/acpi/scan.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-pm/drivers/acpi/scan.c
===================================================================
--- linux-pm.orig/drivers/acpi/scan.c
+++ linux-pm/drivers/acpi/scan.c
@@ -1951,7 +1951,7 @@ static acpi_status acpi_bus_check_add(ac
 		u32 count = acpi_scan_check_dep(handle);
 		/* Bail out if the number of recorded dependencies is not 0. */
 		if (count > 0) {
-			acpi_bus_scan_second_pass = true;
+			acpi_handle_info(handle, "Enumeration skipped\n");
 			return AE_CTRL_DEPTH;
 		}
 	}






[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux