[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v4 4/7] xen/x86: use invpcid for flushing the TLB
On 29/03/18 15:44, Jan Beulich wrote: >>>> On 27.03.18 at 11:07, <jgross@xxxxxxxx> wrote: >> --- a/xen/arch/x86/setup.c >> +++ b/xen/arch/x86/setup.c >> @@ -63,6 +63,10 @@ boolean_param("nosmp", opt_nosmp); >> static unsigned int __initdata max_cpus; >> integer_param("maxcpus", max_cpus); >> >> +/* opt_invpcid: If false, don't use INVPCID instruction even if available. >> */ >> +static bool __initdata opt_invpcid = true; >> +boolean_param("invpcid", opt_invpcid); > > Hmm, I'm sorry for noticing only now (while seeing the questionable > uses of cpu_has_invpcid in patch 7), but this being an init-only > variable and having ... > >> @@ -1549,6 +1553,9 @@ void __init noreturn __start_xen(unsigned long mbi_p) >> if ( cpu_has_fsgsbase ) >> set_in_cr4(X86_CR4_FSGSBASE); >> >> + if ( !opt_invpcid ) >> + setup_clear_cpu_cap(X86_FEATURE_INVPCID); > > ... this effect has two issues: For one, in such a case this should > be a sub-option to "cpuid=". And then afaict it also disables use of > INVPCID in HVM guests. IOW I think you want to retain the option > but make the variable non-init and non-static. Obviously for early > boot use it may then no longer be possible to set it to true at build > time (you may end up needing two variables). Okay. I'll change it. Juergen _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |