Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

ACPI / PM: Call suspend_nvs_free() earlier during resume

It turns out that some device drivers map pages from the ACPI NVS region
during resume using ioremap(), which conflicts with ioremap_cache() used
for mapping those pages by the NVS save/restore code in nvs.c.

Make the NVS pages mapped by the code in nvs.c be unmapped before device
drivers' resume routines run.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Rafael J. Wysocki and committed by
Linus Torvalds
d551d81d 2d6d9fd3

+1 -1
+1 -1
drivers/acpi/sleep.c
··· 166 166 u32 acpi_state = acpi_target_sleep_state; 167 167 168 168 acpi_ec_unblock_transactions(); 169 + suspend_nvs_free(); 169 170 170 171 if (acpi_state == ACPI_STATE_S0) 171 172 return; ··· 187 186 */ 188 187 static void acpi_pm_end(void) 189 188 { 190 - suspend_nvs_free(); 191 189 /* 192 190 * This is necessary in case acpi_pm_finish() is not called during a 193 191 * failing transition to a sleep state.