[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2] x86: do not enable global pages when virtualized on AMD hardware
On Wed, Dec 04, 2019 at 02:15:58PM +0100, Jan Beulich wrote: > On 04.12.2019 12:52, Roger Pau Monné wrote: > > On Wed, Dec 04, 2019 at 12:05:35PM +0100, Jan Beulich wrote: > >> On 04.12.2019 11:44, Roger Pau Monne wrote: > >>> --- a/xen/arch/x86/pv/domain.c > >>> +++ b/xen/arch/x86/pv/domain.c > >>> @@ -118,11 +118,18 @@ unsigned long pv_fixup_guest_cr4(const struct vcpu > >>> *v, unsigned long cr4) > >>> (mmu_cr4_features & PV_CR4_GUEST_VISIBLE_MASK)); > >>> } > >>> > >>> +static int opt_global_pages = -1; > >> > >> int8_t __read_mostly > >> > >>> +boolean_runtime_param("global-pages", opt_global_pages); > >>> + > >>> unsigned long pv_make_cr4(const struct vcpu *v) > >>> { > >>> const struct domain *d = v->domain; > >>> unsigned long cr4 = mmu_cr4_features & > >>> ~(X86_CR4_PCIDE | X86_CR4_PGE | X86_CR4_TSD); > >>> + bool pge = opt_global_pages == -1 ? (!cpu_has_hypervisor || > >>> + boot_cpu_data.x86_vendor != > >>> + X86_VENDOR_AMD) > >>> + : !!opt_global_pages; > >> > >> Let's avoid re-doing this evaluation each time we come here. > >> Post boot the value can only change to 0 or 1. Hence in some > >> __init function you can apply the default calculation done > >> here. > > > > I've assumed that boolean_runtime_param can be changed during runtime > > by the user, and hence the value calculated at boot time would become > > stale if the user changes it after boot, which should be fine for this > > option. > > I'm afraid I can't decide whether you agree or disagree with my > comment. Oh sorry fro not being clear. I was meant to disagree, calculating a value at init time would be wrong, since opt_global_pages can change during runtime. Thanks, Roger. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |