Re: Regression, thermal: core: battery reading wrong after wake from S3 [Was: Bug Report according to thermal_core.c]

From: fhortner@xxxxxxxx
Date: Sun Jun 16 2024 - 03:50:16 EST


Currently I am running kernel 6.8.12 with reverted commit.
But yesterday I had a strange behavior.
After resuming from S3 the laptop registered a low battery, immediately after resume (notification in KDE Plasme). But as far as I could check, the battery level and stats where fine. Nevertheless, after 1 minute it shut off. I guess the low battery reading directly after after resume triggered it.

It is not directly related with the commit, because I have reverted it, but nevertheless, maybe it is helpful to understand the underlying firmware issue.

I' going to test your last patch and let you know.


Am 14.06.24 um 12:18 schrieb Rafael J. Wysocki:
On Thu, Jun 13, 2024 at 10:04 PM fhortner@xxxxxxxx <fhortner@xxxxxxxx> wrote:
Am 13.06.24 um 17:14 schrieb Rafael J. Wysocki:

Let's see if the ACPI thermal zone is the real culprit.

The attached patch only adds the delay for thermal zone 0 which is the
ACPI thermal zone. It also prints the ID and type for all of the
resuming thermal zones.

Please test it (removing all of the test changes/patches tried so far)
and let me know what happens to the battery readings.

Patch

thermal-delay-resume.patch

does not work. Output according to dmesg.txt

Attached is a slightly modified version of the last patch I sent.
Please test it and let me know if it addresses the problem you are
seeing.

If it helps, I think we are done with this at least for now.

patch thermal-core-resume-prio.patch with .priority = -1 does work

One more thing to try is the attached patch (independent of the
previous one) to lower the priority of the thermal PM notifier to make
it run always after the ACPI battery one.

Please test this one too and let me know if it works for you.

patch thermal-core-resume-prio.patch

with .priority = INT_MIN does also work.

If you need any further tests, please don't hesitate to tell me so.
No, thank you, I think you've done enough and it is appreciated.

I don't see any particular drawbacks of this approach and investing
more time in trying to get to the bottom of the issue is probably not
worth it.

I'm going to submit the last patch as the proposed solution.

Thank you for your help!
No problem and thank you!