Li, Aubrey <> wrote:
> Bill.Holler wrote:
> 
>> 
>> 
>> Here are two other cases to consider:
>> 1. offline processors.
>> 2. Solaris disables the local APIC's timer when there are no cyclics
>> on this processor. 
>> 
>> Since neither of these cases use the local APIC's timer,  they do not
>> require lAPIC timer re-programming in idle wakeup?
> 
> For offline processors, I think it should be okay.
> But how about a cyclic xcall is added when this processor is deep
> sleeping?
> 
>> 
>> 
>> Solaris should use the deepest c-state available for offline
>> processors.  :-) 
>> 
> The question is how to make another core to enter deepest c-state?
> cpu_offline call shoudn't be bound to  the CPU which is going to be
> put into deep c-state.

The processor in offline/sparse/faulted states will run idle thread with
interrupt enabled or disabled. 
But you can't rely on normal idleness prediction algorithm to put
offline cpu into deep C state because there may be only one chance to
put cpu into any C state before it is put online again.
So to put offlined cpu into deep C state, you need to check cpu offline
state before adopting normal idleness prediction algorithm to choose cpu
C state. 

> 
> Thanks,
> -Aubrey
> _______________________________________________
> tesla-dev mailing list
> tesla-dev at opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/tesla-dev

Reply via email to