]> git.hungrycats.org Git - linux/commitdiff
cpuidle: ACPI: do not overwrite name and description of C0
authorThomas Schlichter <thomas.schlichter@web.de>
Tue, 31 Mar 2015 18:24:39 +0000 (20:24 +0200)
committerSasha Levin <sasha.levin@oracle.com>
Fri, 24 Apr 2015 21:13:57 +0000 (17:13 -0400)
[ Upstream commit c7e8bdf5872c5a8f5a6494e16fe839c38a0d3d3d ]

Fix a bug that leads to showing the name and description of C-state C0
as "<null>" in sysfs after the ACPI C-states changed (e.g. after AC->DC
or DC->AC
transition).

The function poll_idle_init() in drivers/cpuidle/driver.c initializes the
state 0 during cpuidle_register_driver(), so we better do not overwrite it
again with '\0' during acpi_processor_cst_has_changed().

Signed-off-by: Thomas Schlichter <thomas.schlichter@web.de>
Reviewed-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Cc: 3.13+ <stable@vger.kernel.org> # 3.13+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
drivers/acpi/processor_idle.c

index 17f9ec501972ef208b505ed881173e2dac0cc2ea..fd8496a92b45ee00b5086742feaf3053fc504f86 100644 (file)
@@ -962,7 +962,7 @@ static int acpi_processor_setup_cpuidle_states(struct acpi_processor *pr)
                return -EINVAL;
 
        drv->safe_state_index = -1;
-       for (i = 0; i < CPUIDLE_STATE_MAX; i++) {
+       for (i = CPUIDLE_DRIVER_STATE_START; i < CPUIDLE_STATE_MAX; i++) {
                drv->states[i].name[0] = '\0';
                drv->states[i].desc[0] = '\0';
        }