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

Re: [Xen-devel] [PATCH] x86: Use deep C states for off-lined CPUs



Boris Ostrovsky wrote:
> On 02/29/12 00:21, Liu, Jinsong wrote:
>> Hmm, no.
>> 
>> It need flush cache, as long as *deep Cx* would be spurious-wokenup.
>> The reason clflush here is, it's a light-weight flush, in fact it
>> also could use wbinvd if not consider performance. 
> 
> What address would need to be CFLUSH'd ? Both "address" and
> "pmtmr_ioport_local"?

if while loop only involve inb/inl port, no need to flush.

> 
>> 
>> For halt, it don't need to do so since cpu still keep snoop when
>> sleep. 
> 
> If cpu not snoop when in deeper C-states, wouldn't we have a problem
> with acpi_idle_do_entry()? There is a code path (at least for for C2)
> where the cache is not flushed.

No problem for C1/C2, only C3 and deeper would stop snoop.

> 
> Incidentally, if CFLUSH is required for MONITOR then perhaps
> mwait_idle_with_hints() needs to have it as well?
> 

No need to do so, wbinvd has been done before mwait_idle_with_hints enter C3, 
and it has different scenario with acpi_dead_idle which is a while(1) loop.

Thanks,
Jinsong


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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