[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for-1.4 00/12] target-i386: Fix APIC-ID-based to
From: |
Andreas Färber |
Subject: |
Re: [Qemu-devel] [PATCH for-1.4 00/12] target-i386: Fix APIC-ID-based topology (v4) |
Date: |
Mon, 21 Jan 2013 13:31:26 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130105 Thunderbird/17.0.2 |
Am 17.01.2013 21:59, schrieb Eduardo Habkost:
> I am hoping to get this bug fixed in 1.4. I didn't get much feedback on the
> RFC
> I sent last week, though.
>
> Igor argued that APIC ID should be set by the board and not by the CPU itself,
> but I am not doing that because:
> - I want to keep the bug fix simple and isolated as we are past soft freeze
> - I believe the creator of the CPU object shouldn't be forced to provide the
> APIC ID, so the APIC ID is not unnecessarily exposed on the CPU hotplug
> device_add interface in the future
> - The APIC ID _is_ set by the CPU itself (because each CPU package may have
> multiple core/threads, and each core/thread has a different APIC ID). What
> needs to be provided by the board to the CPU package in the future is the
> package ID and the bit width of the core/thread IDs.
>
> Git tree for reference:
> git://github.com/ehabkost/qemu-hacks.git apicid-topology.v5
> https://github.com/ehabkost/qemu-hacks/tree/apicid-topology.v5
>
> Eduardo Habkost (12):
> kvm: Add fake KVM_FEATURE_CLOCKSOURCE_STABLE_BIT for builds withou
> KVM
> target-i386: Don't set any KVM flag by default if KVM is disabled
> pc: Reverse pc_init_pci() compatibility logic
Applied these to qom-cpu (for 1.4, with some typo fixes):
https://github.com/afaerber/qemu-cpu/commits/qom-cpu
For the rest there's either open questions or still ongoing review.
Andreas
> kvm: Create kvm_arch_vcpu_id() function
> target-i386: kvm: Set vcpu_id to APIC ID instead of CPU index
> fw_cfg: Remove FW_CFG_MAX_CPUS from fw_cfg_init()
> target-i386/cpu: Introduce apic_id_for_cpu() function
> cpus.h: Make constant smp_cores/smp_threads available on *-user
> pc: Set fw_cfg data based on APIC ID calculation
> tests: Support target-specific unit tests
> target-i386: Topology & APIC ID utility functions
> pc: Generate APIC IDs according to CPU topology
>
> hw/fw_cfg.c | 1 -
> hw/pc.c | 44 +++++++++++++---
> hw/pc_piix.c | 26 +++++++---
> hw/ppc_newworld.c | 1 +
> hw/ppc_oldworld.c | 1 +
> hw/sun4m.c | 3 ++
> hw/sun4u.c | 1 +
> include/sysemu/cpus.h | 7 +++
> include/sysemu/kvm.h | 4 ++
> kvm-all.c | 2 +-
> target-i386/cpu.c | 52 +++++++++++++++----
> target-i386/cpu.h | 5 +-
> target-i386/kvm.c | 6 +++
> target-i386/topology.h | 133
> +++++++++++++++++++++++++++++++++++++++++++++++++
> target-ppc/kvm.c | 5 ++
> target-s390x/kvm.c | 5 ++
> tests/.gitignore | 1 +
> tests/Makefile | 21 +++++++-
> tests/test-x86-cpuid.c | 101 +++++++++++++++++++++++++++++++++++++
> 19 files changed, 391 insertions(+), 28 deletions(-)
> create mode 100644 target-i386/topology.h
> create mode 100644 tests/test-x86-cpuid.c
>
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
- [Qemu-devel] [PATCH for-1.4 09/12] pc: Set fw_cfg data based on APIC ID calculation, (continued)
Re: [Qemu-devel] [PATCH for-1.4 00/12] target-i386: Fix APIC-ID-based topology (v4), li guang, 2013/01/18
Re: [Qemu-devel] [PATCH for-1.4 00/12] target-i386: Fix APIC-ID-based topology (v4), Eduardo Habkost, 2013/01/18
Re: [Qemu-devel] [PATCH for-1.4 00/12] target-i386: Fix APIC-ID-based topology (v4),
Andreas Färber <=