Re: [Xen-devel] [PATCH RFC 27/31] xen/x86: Rework Intel masking/faulting setup

2016-01-22 Thread Jan Beulich
>>> On 22.01.16 at 15:46, wrote: > On 22/01/16 14:29, Jan Beulich wrote: > On 22.01.16 at 15:09, wrote: >>> On 22/01/16 09:40, Jan Beulich wrote: >>> On 16.12.15 at 22:24, wrote: > @@ -183,22 +237,13 @@ static void early_init_intel(struct cpuinfo_x86 *c) > (boot_cpu_data.x8

Re: [Xen-devel] [PATCH RFC 27/31] xen/x86: Rework Intel masking/faulting setup

2016-01-22 Thread Andrew Cooper
On 22/01/16 14:29, Jan Beulich wrote: On 22.01.16 at 15:09, wrote: >> On 22/01/16 09:40, Jan Beulich wrote: >> On 16.12.15 at 22:24, wrote: @@ -183,22 +237,13 @@ static void early_init_intel(struct cpuinfo_x86 *c) (boot_cpu_data.x86_mask == 3 || boot_cpu_data.x86_mask ==

Re: [Xen-devel] [PATCH RFC 27/31] xen/x86: Rework Intel masking/faulting setup

2016-01-22 Thread Jan Beulich
>>> On 22.01.16 at 15:09, wrote: > On 22/01/16 09:40, Jan Beulich wrote: > On 16.12.15 at 22:24, wrote: >>> @@ -183,22 +237,13 @@ static void early_init_intel(struct cpuinfo_x86 *c) >>> (boot_cpu_data.x86_mask == 3 || boot_cpu_data.x86_mask == 4)) >>> paddr_bits = 36; >>>

Re: [Xen-devel] [PATCH RFC 27/31] xen/x86: Rework Intel masking/faulting setup

2016-01-22 Thread Andrew Cooper
On 22/01/16 09:40, Jan Beulich wrote: On 16.12.15 at 22:24, wrote: >> +if (msr_basic) >> +__probe_mask_msr(&msr_basic, LCAP_1cd, &cpumask_defaults._1cd); >> + >> +if (msr_ext) >> +__probe_mask_msr(&msr_ext, LCAP_e1cd, &cpumask_defaults.e1cd); >> + >> +if (m

Re: [Xen-devel] [PATCH RFC 27/31] xen/x86: Rework Intel masking/faulting setup

2016-01-22 Thread Jan Beulich
>>> On 16.12.15 at 22:24, wrote: > + if (msr_basic) > + __probe_mask_msr(&msr_basic, LCAP_1cd, &cpumask_defaults._1cd); > + > + if (msr_ext) > + __probe_mask_msr(&msr_ext, LCAP_e1cd, &cpumask_defaults.e1cd); > + > + if (msr_xsave) > + __probe_mask_ms

[Xen-devel] [PATCH RFC 27/31] xen/x86: Rework Intel masking/faulting setup

2015-12-16 Thread Andrew Cooper
This patch is best reviewed as its end result rather than as a diff, as it rewrites almost all of the setup. On the BSP, cpuid information is used to evaluate the potential available set of masking MSRs, and they are unconditionally probed, filling in the availability information and hardware defa