summaryrefslogtreecommitdiff
path: root/usr/src/uts/common/os/cpu_pm.c
diff options
context:
space:
mode:
authorGerry Liu <jiang.liu@intel.com>2010-03-25 15:36:50 -0700
committerGerry Liu <jiang.liu@intel.com>2010-03-25 15:36:50 -0700
commita31148363f598def767ac48c5d82e1572e44b935 (patch)
tree756cfb0c3c9a79f98087875bb4731e0366f895b7 /usr/src/uts/common/os/cpu_pm.c
parent19843f01b1bef3453f717c23c8f89fb9313f6749 (diff)
downloadillumos-gate-a31148363f598def767ac48c5d82e1572e44b935.tar.gz
PSARC/2009/104 Hot-Plug Support for ACPI-based Systems
PSARC/2009/550 PSMI Extensions for CPU Hotplug PSARC/2009/551 acpihpd ACPI Hotplug Daemon PSARC/2009/591 Attachment Points for Hotpluggable x86 Systems 6862510 provide support for cpu hot add on x86 6883891 cmi interface needs to support dynamic reconfiguration 6884154 x2APIC and kmdb may not function properly during CPU hotplug event. 6904971 low priority acpi nexus code review feedback 6877301 lgrp should support memory hotplug flag in SRAT table
Diffstat (limited to 'usr/src/uts/common/os/cpu_pm.c')
-rw-r--r--usr/src/uts/common/os/cpu_pm.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/usr/src/uts/common/os/cpu_pm.c b/usr/src/uts/common/os/cpu_pm.c
index 324e4168d7..b885e421b8 100644
--- a/usr/src/uts/common/os/cpu_pm.c
+++ b/usr/src/uts/common/os/cpu_pm.c
@@ -677,9 +677,13 @@ cpupm_redefine_max_activepwr_state(struct cpu *cp, int max_perf_level)
cpupm_state_t *new_state = NULL;
did = cpupm_domain_id(cp, type);
- mutex_enter(&cpu_lock);
- dom = cpupm_domain_find(did, type);
- mutex_exit(&cpu_lock);
+ if (MUTEX_HELD(&cpu_lock)) {
+ dom = cpupm_domain_find(did, type);
+ } else {
+ mutex_enter(&cpu_lock);
+ dom = cpupm_domain_find(did, type);
+ mutex_exit(&cpu_lock);
+ }
/*
* Can use a lock to avoid changing the power state of the cpu when