[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 2/2] x86/vmx: conditionally disable LBR support due to TSX format quirk
>>> On 10.08.16 at 17:47, <msw@xxxxxxxx> wrote: > On Wed, Aug 10, 2016 at 06:34:10AM -0600, Jan Beulich wrote: >> >>> On 10.08.16 at 08:59, <msw@xxxxxxxx> wrote: >> > --- a/xen/arch/x86/hvm/vmx/vmx.c >> > +++ b/xen/arch/x86/hvm/vmx/vmx.c >> > @@ -2576,8 +2576,22 @@ static const struct lbr_info >> > *last_branch_msr_get(void) >> > /* Haswell */ >> > case 60: case 63: case 69: case 70: >> > /* Broadwell */ >> > - case 61: case 71: case 79: case 86: >> > + case 61: case 71: case 79: case 86: { >> > + u64 caps; >> > + bool_t tsx_support = boot_cpu_has(X86_FEATURE_HLE) || >> > + boot_cpu_has(X86_FEATURE_RTM); >> > + >> > + rdmsrl(MSR_IA32_PERF_CAPABILITIES, caps); >> >> This is guarded by a X86_FEATURE_PDCM check in Linux - why >> would we not need the same here? > > You're right, it should be. It also seems to be missing from > core2_vpmu_init(). Feel free to take the liberty to fix it there at once (but please briefly mention this as an independent change in the description). >> Also I think this RDMSR should be performed once at boot, not every >> time we come here. > > I thought you might say that. It didn't seem obviously right to put > this in boot_cpu_data -- is that what you suggest? Why boot_cpu_data? Just an ordinary (possibly per-CPU) static in vmx.c. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |