x86/idle: Convert force_mwait_ipi_wakeup to X86_BUG_MONITOR

We're going to want alternative-patch based on it.

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Roger Pau Monné <roger.pau@citrix.com>
(cherry picked from commit b0ca0f93f4)
This commit is contained in:
Andrew Cooper committed 2025-07-07 22:52:15 +01:00
1 parent b0396e465f
commit 41b38d5b4f
4 files changed
+2 -10

No files matched your search

-6
View File
@@ -452,14 +452,8 @@ static int __init cf_check cpu_idle_key_init(void)
}
__initcall(cpu_idle_key_init);
/* Force sending of a wakeup IPI regardless of mwait usage. */
bool __ro_after_init force_mwait_ipi_wakeup;
bool arch_skip_send_event_check(unsigned int cpu)
{
if ( force_mwait_ipi_wakeup )
return false;
return false;
}
+1 -1
View File
@@ -436,7 +436,7 @@ static void __init probe_mwait_errata(void)
{
printk(XENLOG_WARNING
"Forcing IPI MWAIT wakeup due to CPU erratum\n");
force_mwait_ipi_wakeup = true;
setup_force_cpu_cap(X86_BUG_MONITOR);
}
}
+1
View File
@@ -53,6 +53,7 @@ XEN_CPUFEATURE(USE_VMCALL, X86_SYNTH(30)) /* Use VMCALL instead of VMMCAL
#define X86_BUG_CLFLUSH_MFENCE X86_BUG( 2) /* MFENCE needed to serialise CLFLUSH */
#define X86_BUG_IBPB_NO_RET X86_BUG( 3) /* IBPB doesn't flush the RSB/RAS */
#define X86_BUG_CLFLUSH_MONITOR X86_BUG( 4) /* MONITOR requires CLFLUSH */
#define X86_BUG_MONITOR X86_BUG( 5) /* MONITOR doesn't always notice writes (force IPIs) */
#define X86_SPEC_NO_LFENCE_ENTRY_PV X86_BUG(16) /* (No) safety LFENCE for SPEC_CTRL_ENTRY_PV. */
#define X86_SPEC_NO_LFENCE_ENTRY_INTR X86_BUG(17) /* (No) safety LFENCE for SPEC_CTRL_ENTRY_INTR. */
-3
View File
@@ -13,9 +13,6 @@
#define MWAIT_ECX_INTERRUPT_BREAK 0x1
/* Force sending of a wakeup IPI regardless of mwait usage. */
extern bool force_mwait_ipi_wakeup;
void mwait_idle_with_hints(unsigned int eax, unsigned int ecx);
bool mwait_pc10_supported(void);
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.