diff options
author | rsmaeda <none@none> | 2007-05-10 19:40:07 -0700 |
---|---|---|
committer | rsmaeda <none@none> | 2007-05-10 19:40:07 -0700 |
commit | 459190a5c46206e7885f6a649a055ceb46be49a7 (patch) | |
tree | a4103af9f856081d4e7066d8f983cd19c770b322 /usr/src/uts/sun4v/cpu/generic.c | |
parent | aa47d34086d87750d5d3721b607c057e282e1048 (diff) | |
download | illumos-gate-459190a5c46206e7885f6a649a055ceb46be49a7.tar.gz |
6552083 pg_cmt_cpu_init() assert failed during CPU DR on Huron
Diffstat (limited to 'usr/src/uts/sun4v/cpu/generic.c')
-rw-r--r-- | usr/src/uts/sun4v/cpu/generic.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/usr/src/uts/sun4v/cpu/generic.c b/usr/src/uts/sun4v/cpu/generic.c index 6c93042813..041aa4743f 100644 --- a/usr/src/uts/sun4v/cpu/generic.c +++ b/usr/src/uts/sun4v/cpu/generic.c @@ -18,6 +18,7 @@ * * CDDL HEADER END */ + /* * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. @@ -149,13 +150,14 @@ dtrace_flush_sec(uintptr_t addr) } void -cpu_init_private(struct cpu *cp) +cpu_map_exec_units(struct cpu *cp) { + ASSERT(MUTEX_HELD(&cpu_lock)); + /* * The cpu_ipipe and cpu_fpu fields are initialized based on - * the execution unit sharing information from the Machine - * Description table. They default to the CPU id in the - * absence of such information. + * the execution unit sharing information from the MD. They + * default to the CPU id in the absence of such information. */ cp->cpu_m.cpu_ipipe = cpunodes[cp->cpu_id].exec_unit_mapping; if (cp->cpu_m.cpu_ipipe == NO_EU_MAPPING_FOUND) @@ -169,10 +171,16 @@ cpu_init_private(struct cpu *cp) } void -cpu_uninit_private(struct cpu *cp) +cpu_init_private(struct cpu *cp) { + cpu_map_exec_units(cp); } +/*ARGSUSED*/ +void +cpu_uninit_private(struct cpu *cp) +{} + /* * Invalidate a TSB. Since this needs to work on all sun4v * architecture compliant processors, we use the old method of |