Re: 2.6.16-rc5: known regressions [TP 600X S3, vanilla DSDT]

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

 



>> Which is why I think the minimal change is the diff above to
>> utils.c [to make acpi_evaluate_integer fake _TMP].  With that
>> change the system never hung.

> Good, this is exactly what I wanted.  How many times you tested with
> this hack without hang?

Sadly, I just tried it again and it hung.  But from looking at my old
emails and test results, I know why.  I made the previous tests with
only THM0 loaded.  The bisection began by loading only THM0 (by having
acpi_thermal_add() ignore THM[267]).  The hang still happened, so I
never tested whether THM[267] also have problems: chase one problem at
a time.

To test the theory, I recompiled to recreate the kernel with the
utils.c change [to make acpi_evaluate_integer fake _TMP] and with only
THM0 loaded (i.e. what I had tested and reported a few days ago).  It
didn't hang (10 cycles), which repeats my previous result.

> The short-term proper way could be:
> 1. add a global variable: acpi_in_suspend.
> 2. in acpi_pm_prepare:
>	a.call acpi_os_wait_events_complete()
> 	b.set acpi_in_suspend = YES.
>    in acpi_pm_finish :
> 	set acpi_in_suspend = NO.
> 3. in acpi_thermal_run:
> 	if (acpi_in_suspend == YES)
>		do nothing.

I tested the included diff to implement the above short-term fix.  It
also hung on the second sleep.  BUT, it's the same reason that the
utils.c change didn't help: because acpi_thermal_add() was loading
THM[0267].  After the usual modification to acpi_thermal_add() to have
it ignore THM[267], the system didn't hang (12 cycles).  Which is
progress.

So I conclude that this diff does fix the THM0 problem, but that at
least one other thermal zone has a problem, and the problem is not
_TMP.  Or at least, the problem is not the same one that THM0 has
(running thermal threads at suspend time), otherwise the diff would
fix it like it fixed THM0.

I guess I should try loading only one of THM2,6,7 to see which zones
besides THM0 produce a problem, and then narrow the problem to one
method within the zone.

-Sanjoy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux