summaryrefslogtreecommitdiffstats
path: root/target-i386
diff options
context:
space:
mode:
authorEduardo Habkost2014-12-19 02:28:45 +0100
committerEduardo Habkost2015-02-25 19:00:07 +0100
commit9c235e83f1c3437be6ca45755909efb745c10deb (patch)
tree0d99e8c7cf74dfa274470ad2d8731f798a4b87c1 /target-i386
parentlinux-user: Check for cpu_init() errors (diff)
downloadqemu-9c235e83f1c3437be6ca45755909efb745c10deb.tar.gz
qemu-9c235e83f1c3437be6ca45755909efb745c10deb.tar.xz
qemu-9c235e83f1c3437be6ca45755909efb745c10deb.zip
target-i386: Set APIC ID using cpu_index on CONFIG_USER
The PC CPU initialization code already sets apic-id based on the CPU topology, and CONFIG_USER doesn't need the topology-based APIC ID calculation code. Make CONFIG_USER set apic-id before realizing the CPU (just like PC already does), so we can simplify x86_cpu_initfn later. As there is no CPU topology configuration in CONFIG_USER, just use cpu_index as the APIC ID. Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Diffstat (limited to 'target-i386')
-rw-r--r--target-i386/cpu.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/target-i386/cpu.c b/target-i386/cpu.c
index e8cd7b38ba..3e0c39c8bd 100644
--- a/target-i386/cpu.c
+++ b/target-i386/cpu.c
@@ -2145,6 +2145,12 @@ CPUX86State *cpu_x86_init_user(const char *cpu_model)
goto error;
}
+ object_property_set_int(OBJECT(cpu), CPU(cpu)->cpu_index, "apic-id",
+ &error);
+ if (error) {
+ goto error;
+ }
+
object_property_set_bool(OBJECT(cpu), true, "realized", &error);
if (error) {
goto error;