[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 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. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |