[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7487e99d-421b-4ac5-bb77-e61c3131bb13@amd.com>
Date: Fri, 28 Nov 2025 00:33:24 +0530
From: "Longia, Amandeep Kaur" <AmandeepKaur.Longia@....com>
To: "lihuisong (C)" <lihuisong@...wei.com>, "Rafael J. Wysocki"
<rafael@...nel.org>
CC: ACPI Devel Maling List <linux-acpi@...r.kernel.org>, Linux PM
<linux-pm@...r.kernel.org>, Linux Kernel Mailing List
<linux-kernel@...r.kernel.org>, Linus Torvalds
<torvalds@...ux-foundation.org>, <kprateek.nayak@....com>, <dhsrivas@....com>
Subject: Re: [GIT PULL] Urgent ACPI support fix for v6.18
Hi all,
On 11/27/2025 7:39 AM, lihuisong (C) wrote:
> Hello Rafael,
>
> 在 2025/11/26 20:54, Rafael J. Wysocki 写道:
>> Hi Linus,
>>
>> Please pull from the tag
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \
>> acpi-6.18-rc8
>>
>> with top-most commit 43ff36c4a5a574ee83b4b0d3f3d74f09a3a8c2d3
>>
>> Revert "ACPI: processor: idle: Optimize ACPI idle driver registration"
>>
>> on top of commit ac3fd01e4c1efce8f2c054cdeb2ddd2fc0fb150d
>>
>> Linux 6.18-rc7
>>
>> to receive an urgent ACPI support fix for 6.18.
>>
>> This reverts a commit that attempted to make the code in the ACPI
>> processor driver more straightforward, but it turned out to cause
>> the kernel to crash on at least one system, along with some further
>> cleanups on top of it.
> I just found that "ACPI: processor: idle: Optimize ACPI idle driver
> registration" depends on the change
> about cpuhp_setup_state in the commit [1]. Or many CPUs don't create
> cpuidle directory.
> What is the crash? Do you have releated trace?
>
> [1] https://lore.kernel.org/all/20240529133446.28446-2-
> Jonathan.Cameron@...wei.com/
We have observed the same issue. After booting the system with the
latest kernel, the sysfs path /sys/devices/system/cpu/cpu*/cpuidle does
not exist. Bisecting between v6.18-rc7 (good) and master (bad) led us to
the following commit:
43ff36c4a5a574ee83b4b0d3f3d74f09a3a8c2d3 Revert "ACPI: processor: idle:
Optimize ACPI idle driver registration"
After debugging, we identified a code change that resolves the issue on
our systems. Below is the code diff:
diff --git a/drivers/acpi/processor_driver.c
b/drivers/acpi/processor_driver.c
index 7644de24d2fa..65e779be64ff 100644
--- a/drivers/acpi/processor_driver.c
+++ b/drivers/acpi/processor_driver.c
@@ -166,7 +166,7 @@ static int __acpi_processor_start(struct acpi_device
*device)
if (result && !IS_ENABLED(CONFIG_ACPI_CPU_FREQ_PSS))
dev_dbg(&device->dev, "CPPC data invalid or not
present\n");
- if (cpuidle_get_driver() == &acpi_idle_driver)
+ if (!cpuidle_get_driver() || cpuidle_get_driver() ==
&acpi_idle_driver)
acpi_processor_power_init(pr);
Thanks,
Amandeep
>>
>>
>> ---------------
>>
>> Rafael J. Wysocki (5):
>> Revert "ACPI: processor: Do not expose global variable
>> acpi_idle_driver"
>> Revert "ACPI: processor: idle: Redefine two functions as void"
>> Revert "ACPI: processor: idle: Rearrange declarations in header
>> file"
>> Revert "ACPI: processor: Remove unused empty stubs of some
>> functions"
>> Revert "ACPI: processor: idle: Optimize ACPI idle driver
>> registration"
>>
>> ---------------
>>
>> drivers/acpi/processor_driver.c | 6 +--
>> drivers/acpi/processor_idle.c | 115 +++++++++++++++
>> +------------------------
>> include/acpi/processor.h | 34 +++++++++---
>> 3 files changed, 76 insertions(+), 79 deletions(-)
>>
Powered by blists - more mailing lists