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

ACPI: fix mis-merge -- invoke acpi_unlazy_tlb() only on C3 entry

This original patch
http://ussg.iu.edu/hypermail/linux/kernel/0712.2/1451.html
was intending to add acpi_unlazy_tlb() to acpi_idle_enter_bm(),
which is used for C3 entry.

But it was merged incorrectly as commmit

bde6f5f59c2b2b48a7a849c129d5b48838fe77ee
'x86: voluntary leave_mm before entering ACPI C3'

so the call was instead added to acpi_idle_enter_simple()
(which is C2 entry routine), probably due to identical
context in that function.

Move the call back to acpi_idle_enter_bm().

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>

authored by

Venki Pallipadi and committed by
Len Brown
996520c1 a4083c92

+2 -1
+2 -1
drivers/acpi/processor_idle.c
··· 1487 1487 return 0; 1488 1488 } 1489 1489 1490 - acpi_unlazy_tlb(smp_processor_id()); 1491 1490 /* 1492 1491 * Must be done before busmaster disable as we might need to 1493 1492 * access HPET ! ··· 1575 1576 local_irq_enable(); 1576 1577 return 0; 1577 1578 } 1579 + 1580 + acpi_unlazy_tlb(smp_processor_id()); 1578 1581 1579 1582 /* Tell the scheduler that we are going deep-idle: */ 1580 1583 sched_clock_idle_sleep_event();