Commit a5629197 authored by Keir Fraser's avatar Keir Fraser

x86: Clean up wbinvd usage in cpu offline paths.

No need to wbinvd before HLT (entering C1) as the processor continues
to participate in the full cache coherency protocol in this sleep
state.
Signed-off-by: default avatarKeir Fraser <keir@xen.org>
parent 7c61cf4f
......@@ -567,8 +567,8 @@ static void acpi_dead_idle(void)
if ( cx->entry_method == ACPI_CSTATE_EM_FFH )
{
/*
* cache must be flashed as the last ops before cpu going into dead,
* otherwise, cpu may dead with dirty data breaking cache coherency,
* Cache must be flushed as the last operation before sleeping.
* Otherwise, CPU may still hold dirty data, breaking cache coherency,
* leading to strange errors.
*/
wbinvd();
......@@ -593,7 +593,6 @@ static void acpi_dead_idle(void)
}
default_halt:
wbinvd();
for ( ; ; )
halt();
}
......
......@@ -93,12 +93,6 @@ static void default_idle(void)
static void default_dead_idle(void)
{
/*
* cache must be flashed as the last ops before cpu going into dead,
* otherwise, cpu may dead with dirty data breaking cache coherency,
* leading to strange errors.
*/
wbinvd();
for ( ; ; )
halt();
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment