|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v13 12/23] x86: refactor psr: L3 CAT: set value: implement write msr flow.
On 17-07-13 13:21:46, Jan Beulich wrote:
> >>> Yi Sun <yi.y.sun@xxxxxxxxxxxxxxx> 07/13/17 9:34 AM >>>
> >On 17-07-12 23:20:24, Jan Beulich wrote:
> >> >>> Yi Sun <yi.y.sun@xxxxxxxxxxxxxxx> 07/13/17 5:00 AM >>>
> >> >On 17-07-12 13:37:02, Jan Beulich wrote:
> >> >> >>> Yi Sun <yi.y.sun@xxxxxxxxxxxxxxx> 07/06/17 4:07 AM >>>
> >> >> >+ if ( socket == cpu_to_socket(smp_processor_id()) )
> >> >> >+ do_write_psr_msrs(&data);
> >> >> >+ else
> >> >> >+ {
> >> >> >+ unsigned int cpu = get_socket_cpu(socket);
> >> >> >+
> >> >> >+ if ( cpu >= nr_cpu_ids )
> >> >> >+ return -ENOTSOCK;
> >> >> >+ on_selected_cpus(cpumask_of(cpu), do_write_psr_msrs, &data,
> >> >> >1);
> >> >>
> >> >> How frequent an operation can this be? Considering that the actual MSR
> >> >> write(s)
> >> >> in the handler is (are) conditional I wonder whether it wouldn't be
> >> >> worthwhile
> >> >> trying to avoid the IPI altogether, by pre-checking whether any write
> >> >> actually
> >> >> needs doing.
> >> >>
> >> >Yes, I think I can check if the value to set is same as
> >> >'feat->cos_reg_val[cos]'
> >> >before calling IPI.
> >>
> >> Well, as said - whether it's worth the extra effort depends on whether
> >> there is
> >> a (reasonable) scenario where this function may be executed frequently.
> >>
> >This function is executed when 'psr-cat-set' command is executed. I consult
> >the libvirt guy, this command may be executed frequently under some
> >scenarios.
> >E.g. user may dynamically adjust the cache allocation for VMs according to
> >CMT
> >result.
>
> Hmm, that's not something I would call frequent - in the whole invocation of
> the
> user mode process the IPI will be lost in the noise. "Frequent" would be
> something
> the kernel does without direct user mode triggering, like on the context
> switch
> path, in code running from a timer, or some such.
>
Then, it is not 'Frequent'. This function is only trigger by user. So, I
will keep current codes. Thanks!
> Jan
>
>
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> https://lists.xen.org/xen-devel
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |