On Wed, Mar 31, 2021, Kuppuswamy Sathyanarayanan wrote: > Changes since v3: > * WARN user if SEAM does not disable MONITOR/MWAIT instruction.
Why bother? There are a whole pile of features that are dictated by the TDX module spec. MONITOR/MWAIT is about as uninteresting as it gets, e.g. absolute worst case scenario is the guest kernel crashes, whereas a lot of spec violations would compromise the security of the guest. > + case EXIT_REASON_MONITOR_INSTRUCTION: > + case EXIT_REASON_MWAIT_INSTRUCTION: > + /* > + * MWAIT/MONITOR features are disabled by TDX Module (SEAM) > + * and also re-suppressed in kernel by clearing > + * X86_FEATURE_MWAIT CPU feature flag in tdx_early_init(). So > + * if TD guest still executes MWAIT/MONITOR instruction with > + * above suppression, it needs user attention. > + */ > + WARN(1, "TD Guest used unsupported MWAIT/MONITOR > instruction\n"); Why not just WARN_ONCE and call it good? > + break; > default: > pr_warn("Unexpected #VE: %d\n", ve->exit_reason); > return -EFAULT; > -- > 2.25.1 >