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
