[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [Xen-devel] [RFC] Physical hot-add cpus and TSC

>-----Original Message-----
>From: Keir Fraser [mailto:keir.fraser@xxxxxxxxxxxxx]
>Sent: Thursday, May 27, 2010 2:58 PM
>To: Jiang, Yunhong; Dan Magenheimer; Xen-Devel (xen-devel@xxxxxxxxxxxxxxxxxxx);
>Ian Pratt
>Subject: Re: [Xen-devel] [RFC] Physical hot-add cpus and TSC
>On 27/05/2010 07:15, "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx> wrote:
>>>>> It depends how physical CPU hotplug is implemented doesn't it. I expect
>>>>> there's sufficient firmware involved in such an operation that TSCs
>>>>> could
>>>>> get synced up before host software gets a look in. I don't think we can
>>>>> comment on whether or not there is an issue here without more
>>>>> information.
>> Yes, this is a issue. The TSC will not be synched by firmware when hot-added,
>> at least I didn't find any spec on this, and my experiment shows the TSC 
>> value
>> is very small when new CPU is brought up. We need sync it in Xen side,
>> Is it possible to sync the new-added CPU with the BSP when the CPU is added
>> (changed from non-present to present), as Keir suggested in previous mail? I
>> will have a look on the related code.
>Is this *specifically* a problem for physical cpu hot-add, but not 'logical'
>cpu online (i.e, XENPF_cpu_hotadd but not XENPF_cpu_online)?

Yes, I do think so, if the CPU support invariant TSC. For those CPU that does 
not support invariant TSC, I think current redezvous calibration code has do 
that already, right?

>We could sync an AP's TSC with the master CPU bringing it up (typically
>CPU0) if (a) !boot_cpu_has(RELIABLE_TSC); or (b) The slave was introduced
>via XENPF_cpu_hotadd and this is its first time brought online.

Yes, exactly.

>Thoughts? I can implement this, or whatever we can (attempt to) agree on,

It's great if you can do that. I'm still checking the time related code. 

>easily enough. I expect Dan would prefer to have XENPF_cpu_hotadd disabled,
>or RELIABLE_TSC disabled, depending on a command-line option defaulting to
>the former. It seems a bit onerous to me however.

Yes, thanks.
BTW, are there any easy way to check the TSC skew in the system? Originally I 
get the TSC through ITP, that's not so convenient.

> -- Keir

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.