Mercurial > illumos > illumos-gate
changeset 10848:2cc61d58b78a
6892621 x4440 hits mach_state->ms_cstate.cma_domain != NULL with 10/13 bits
author | Anup Pemmaiah <Napanda.Pemmaiah@Sun.COM> |
---|---|
date | Fri, 23 Oct 2009 11:50:59 -0400 |
parents | 37439331af3e |
children | 426b2b7cf7e5 |
files | usr/src/uts/i86pc/os/cpupm/cpupm_mach.c |
diffstat | 1 files changed, 15 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/usr/src/uts/i86pc/os/cpupm/cpupm_mach.c Fri Oct 23 09:14:54 2009 +0200 +++ b/usr/src/uts/i86pc/os/cpupm/cpupm_mach.c Fri Oct 23 11:50:59 2009 -0400 @@ -207,6 +207,8 @@ mach_state->ms_caps |= CPUPM_P_STATES; } } + } else { + cpupm_disable(CPUPM_P_STATES); } if (mach_state->ms_tstate.cma_ops != NULL) { @@ -217,6 +219,8 @@ } else { mach_state->ms_caps |= CPUPM_T_STATES; } + } else { + cpupm_disable(CPUPM_T_STATES); } /* @@ -249,6 +253,8 @@ idle_cpu = non_deep_idle_cpu; disp_enq_thread = non_deep_idle_disp_enq_thread; } + } else { + cpupm_disable(CPUPM_C_STATES); } @@ -267,9 +273,15 @@ mach_state->ms_caps & CPUPM_P_STATES, mach_state->ms_caps & CPUPM_C_STATES); } - cpupm_throttle_manage_notification(cp); - cpuidle_manage_cstates(cp); - cpupm_power_manage_notifications(cp); + if (mach_state->ms_caps & CPUPM_T_STATES) { + cpupm_throttle_manage_notification(cp); + } + if (mach_state->ms_caps & CPUPM_C_STATES) { + cpuidle_manage_cstates(cp); + } + if (mach_state->ms_caps & CPUPM_P_STATES) { + cpupm_power_manage_notifications(cp); + } cpupm_add_notify_handler(cp, cpupm_event_notify_handler, cp); } first = B_FALSE;