Statistics
| Branch: | Revision:

root / hw / i386 @ 43a52ce6

# Date Author Comment
5650f5f4 08/21/2013 11:30 pm Markus Armbruster

pc: Don't prematurely explode QEMUMachineInitArgs

Don't explode QEMUMachineInitArgs before passing it to pc_init1().

Signed-off-by: Markus Armbruster <>
Reviewed-by: Laszlo Ersek <>
Reviewed-by: Eduardo Habkost <>...

3b6fb9ca 08/21/2013 11:30 pm Markus Armbruster

pc: Don't explode QEMUMachineInitArgs into local variables needlessly

Don't explode when the variable is used just a few times, and never
changed.

Signed-off-by: Markus Armbruster <>
Reviewed-by: Laszlo Ersek <>
Reviewed-by: Eduardo Habkost <>...

43a52ce6 08/21/2013 11:30 pm Eduardo Habkost

pc: Kill pc_init_pci_1_0()

The pc_init_pci_1_2()/pc_init_pci_1_0() split was made on commit
6fd028f64f662c801fd5a54d0e3a1d2baeee93ea, in preparation for commit
9953f8822cc316eec9962f0a2858c3439a80adec. The latter was reverted, so there's
no reason to keep two separate functions that do exactly the same, anymore....

c0b4cc1f 08/21/2013 12:18 am Michael S. Tsirkin

pc: cleanup 1.4 compat support

Make 1.4 compat code call the 1.6 one, reducing
code duplication. Add comment explaining why we can't
make 1.4 call 1.5 as usual.

Signed-off-by: Michael S. Tsirkin <>
Reviewed-by: Andreas Färber <>...

04920fc0 08/21/2013 12:18 am Michael S. Tsirkin

loader: store FW CFG ROM files in RAM

ROM files that are put in FW CFG are copied to guest ram, by BIOS, but
they are not backed by RAM so they don't get migrated.

Each time we change two bytes in such a ROM this breaks cross-version
migration: since we can migrate after BIOS has read the first byte but...

02653c5e 08/13/2013 05:02 pm Anthony Liguori

pvpanic: fix bad merge

Context matching caused the 'has_pvpanic = true' to be applied to
the 1.6 machine type instead of the 1.5 machine type.

Reported-by: Markus Armbruster <>
Reported-by: Michael S. Tsirkin <>
Signed-off-by: Anthony Liguori <>

9d054ea5 08/12/2013 11:03 pm Anthony Liguori

Merge remote-tracking branch 'afaerber/tags/qom-cpu-for-anthony' into staging

QOM CPUState refactorings

  • Fix X86CPU Westmere CPUID for pc-*-1.4 and older
  • afaerber/tags/qom-cpu-for-anthony:
    pc: Remove PCLMULQDQ from Westmere on pc-*-1.4 and older

Conflicts:...

9fb7aaaf 08/12/2013 10:59 pm Anthony Liguori

pc: drop external DSDT loading

This breaks migration and is unneeded with modern SeaBIOS.

Signed-off-by: Anthony Liguori <>
Message-id:

7f3e341a 08/12/2013 07:20 pm Marcel Apfelbaum

hw/misc: don't create pvpanic device by default

This patch is based on Hu Tao's:
http://lists.nongnu.org/archive/html/qemu-devel/2013-08/msg00124.html

No need to hard-code pvpanic as part of the machine.
It can be added with "-device pvpanic" from command line (The next patch)....

56383703 08/12/2013 06:33 pm Eduardo Habkost

pc: Remove PCLMULQDQ from Westmere on pc-*-1.4 and older

Commit 41cb383f42d0cb51d8e3e25e3ecebc954dd4196f made a guest-visible
change by adding the PCLMULQDQ bit to Westmere without adding
compatibility code to keep the ABI for older machine-types.
Fix it by adding the missing compat code....

a904410a 08/12/2013 05:31 pm Paolo Bonzini

pc_sysfw: remove the rom_only property

With the new semantics of pc_sysfw (no -pflash implies "old-style" ROM setup,
-pflash implies "new-style" ROM setup), there is no need anymore for a compat
property. Old machines simply will never use -pflash, and thus will always...

6dd2a5c9 08/12/2013 05:31 pm Paolo Bonzini

pc_sysfw: do not make it a device anymore

Move the code to hw/i386, the sole remaining property is available
as !pci_enabled.

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Markus Armbruster <>
Message-id: ...

9604f70f 08/12/2013 12:05 pm Michael S. Tsirkin

pc: disable pci-info for 1.6

The BIOS that we ship in 1.6 does not use pci info
from host (yet). Several issues turned up
(e.g. around winXP boot crashes). So it's safest to disable that
interface for 1.6 machine types for now, leave it on for 1.7
as we have enough time to fix issues if any....

cd7b87ff 08/06/2013 08:27 pm Andreas Färber

target-i386: Fix X86CPU error handling

Error **errp argument is not for emitting warnings, it means an error
has occurred and the caller should not make any assumptions about the
state of other return values (unless otherwise documented).

Therefore cpu_x86_create() must unref the new X86CPU itself, and...

39848901 07/30/2013 03:33 am Igor Mammedov

pc: limit 64 bit hole to 2G by default

It turns out that some 32 bit windows guests crash
if 64 bit PCI hole size is >2G.
Limit it to 2G for piix and q35 by default.
User may override default 64-bit PCI hole size by
using "pci-hole64-size" property.

Examples:...

c52dc697 07/30/2013 03:33 am Igor Mammedov

pc: add Q35 to QOM composition tree under /machine

Signed-off-by: Igor Mammedov <>
Reviewed-by: Andreas Färber <>
Reviewed-by: Michael S. Tsirkin <>
Reviewed-by: Andreas Färber <>
Message-id: ...

f5338ee3 07/30/2013 03:33 am Michael S. Tsirkin

pc: move IO_APIC_DEFAULT_ADDRESS to include/hw/i386/ioapic.h

Signed-off-by: Michael S. Tsirkin <>
Signed-off-by: Laszlo Ersek <>
Signed-off-by: Igor Mammedov <>
Reviewed-by: Andreas Färber <>...

253eacc2 07/29/2013 10:07 pm Andreas Färber

kvmvapic: QOM cast cleanup

Signed-off-by: Andreas Färber <>

b3119631 07/29/2013 10:07 pm Andreas Färber

kvm/ioapic: QOM cast cleanup

Signed-off-by: Andreas Färber <>

125ee0ed 07/29/2013 06:37 pm Marcel Apfelbaum

devices: Associate devices to their logical category

The category will be used to sort the devices displayed in
the command line help.

Signed-off-by: Marcel Apfelbaum <>
Message-id: ...

3988982c 07/23/2013 06:57 pm Anthony Liguori

Merge remote-tracking branch 'afaerber/tags/qom-cpu-for-anthony' into staging

QOM CPUState refactorings

  • Fix NULL pointer dereference in gdbstub
  • Introduce vaddr type
  • Introduce CPUClass::set_pc()
  • Introduce CPUClass::synchronize_from_tb()
  • Introduce CPUClass::get_phys_page_debug()...
00b941e5 07/23/2013 03:41 am Andreas Färber

cpu: Turn cpu_get_phys_page_debug() into a CPUClass hook

Change breakpoint_invalidate() argument to CPUState alongside.

Since all targets now assign a softmmu-only field, we can drop helpers
cpu_class_set_{do_unassigned_access,vmsd}() and device_class_set_vmsd()....

f17ec444 07/23/2013 03:41 am Andreas Färber

exec: Change cpu_memory_rw_debug() argument to CPUState

Propagate X86CPU in kvmvapic for simplicity.

Signed-off-by: Andreas Färber <>

98bdc0d7 07/23/2013 01:37 am Hu Tao

kvm/clock: QOM'ify some more

Introduce type constant and avoid FROM_SYSBUS().

Signed-off-by: Hu Tao <>
[AF: Renamed parent field]
Signed-off-by: Andreas Färber <>

913bc638 07/23/2013 01:37 am Hu Tao

kvm/clock: Use QOM realize for kvmclock

Signed-off-by: Hu Tao <>
Signed-off-by: Andreas Färber <>

c118d44b 07/23/2013 01:37 am Hu Tao

kvmvapic: Use QOM realize

Signed-off-by: Hu Tao <>
[AF: Renamed variable]
Signed-off-by: Andreas Färber <>

ce88812f 07/23/2013 01:37 am Hu Tao

q35: Use type-safe cast instead of direct access of parent dev

And remove variables if possible.

Signed-off-by: Hu Tao <>
[AF: Converted remaining access and renamed to parent_obj]
Signed-off-by: Andreas Färber <>

e9acb8ce 07/18/2013 04:12 pm Anthony Liguori

Merge remote-tracking branch 'mst/tags/for_anthony' into staging

pci,net,pc enhancements

This includes some fixes and enhancements that accumulated in my tree:
pci fixes by dkoch, virtio-net enhancements by akong and mst,
and a fix for xen pc by mst.

Signed-off-by: Michael S. Tsirkin <>...

d26d9e14 07/15/2013 09:26 pm Michael S. Tsirkin

pc: don't access fw cfg if NULL

commit f8c457b88d72a48989f190bc3d7b79f4f3b7d11c
"pc: pass PCI hole ranges to Guests"
broke Xen as it has no fw_cfg.
Check for this configuration and boil out.

Signed-off-by: Michael S. Tsirkin <>
Tested-by: Stefano Stabellini <>

182735ef 07/09/2013 10:32 pm Andreas Färber

cpu: Make first_cpu and next_cpu CPUState

Move next_cpu from CPU_COMMON to CPUState.
Move first_cpu variable to qom/cpu.h.

gdbstub needs to use CPUState::env_ptr for now.
cpu_copy() no longer needs to save and restore cpu_next.

Acked-by: Paolo Bonzini <>...

4917cf44 07/09/2013 10:20 pm Andreas Färber

cpu: Replace cpu_single_env with CPUState current_cpu

Move it to qom/cpu.h.

Signed-off-by: Andreas Färber <>

dc11549e 07/08/2013 04:00 pm Anthony Liguori

Merge remote-tracking branch 'mst/tags/for_anthony' into staging

pci,misc enhancements

This includes some pci enhancements:

Better support for systems with multiple PCI root buses
FW cfg interface for more robust pci programming in BIOS
Minor fixes/cleanups for fw cfg and cross-version migration -...

29b358f9 07/07/2013 11:10 pm David Gibson

pci: Add root bus parameter to pci_nic_init()

At present, pci_nic_init() and pci_nic_init_nofail() assume that they will
only create a NIC under the primary PCI root. As we add support for
multiple PCI roots, that may no longer be the case. This patch adds a root...

1ef7a2a2 07/07/2013 11:10 pm David Gibson

pci: Abolish pci_find_root_bus()

pci_find_root_bus() takes a domain parameter. Currently PCI root buses
with domain other than 0 can't be created, so this is more or less a long
winded way of retrieving the main PCI root bus. Numbered domains don't
actually properly cover the (non x86) possibilities for multiple PCI root...

c3ab4c9c 07/07/2013 07:19 pm Anthony Liguori

Merge remote-tracking branch 'bonzini/iommu-for-anthony' into staging

  1. By Paolo Bonzini (50) and others
  2. Via Paolo Bonzini
    • bonzini/iommu-for-anthony: (66 commits)
      exec: change some APIs to take AddressSpaceDispatch
      exec: remove cur_map
      exec: put memory map in AddressSpaceDispatch...
1437c94b 07/04/2013 06:42 pm Paolo Bonzini

hw/i*: pass owner to memory_region_init* functions

Signed-off-by: Paolo Bonzini <>

dfde4e6e 07/04/2013 06:42 pm Paolo Bonzini

memory: add ref/unref calls

Add ref/unref calls at the following places:

- places where memory regions are stashed by a listener and
used outside the BQL (including in Xen or KVM).

- memory_region_find callsites

- creation of aliases and containers (only the aliased/contained...

2c9b15ca 07/04/2013 06:42 pm Paolo Bonzini

memory: add owner argument to initialization functions

Signed-off-by: Paolo Bonzini <>

3459a625 07/04/2013 10:40 am Michael S. Tsirkin

pci: store PCI hole ranges in guestinfo structure

Will be used to pass hole ranges to guests.

Signed-off-by: Michael S. Tsirkin <>

f8c457b8 07/04/2013 10:40 am Michael S. Tsirkin

pc: pass PCI hole ranges to Guests

Guest currently has to jump through lots of hoops to guess the PCI hole
ranges. It's fragile, and makes us change BIOS each time we add a new
chipset. Let's report the window in a ROM file, to make BIOS do exactly
what QEMU intends....

fcbe0a70 07/04/2013 10:40 am Michael S. Tsirkin

pc_piix: cleanup init compat handling

Make sure 1.4 calls 1.5, 1.3 calls 1.4 etc.
This way it's enough to add enough new compat hook
in a single place in piix.

Signed-off-by: Michael S. Tsirkin <>

00f4d64e 07/03/2013 11:41 am Marcelo Tosatti

kvmclock: clock should count only if vm is running

kvmclock should not count while vm is paused, because:

1) if the vm is paused for long periods, timekeeping
math can overflow while converting the (large) clocksource
delta to nanoseconds.

2) Users rely on CLOCK_MONOTONIC to count run time, that is,...

bd50cbaa 07/03/2013 11:38 am Wanlong Gao

pci-assign: remove the duplicate function name in debug message

While DEBUG already includes the function name.

Signed-off-by: Wanlong Gao <>
Acked-by: Alex Williamson <>
Signed-off-by: Paolo Bonzini <>

cb925cf9 07/01/2013 02:11 am Alexander Graf

KVM: PIC: Only commit irq routing when necessary

The current logic updates KVM's view of our interrupt map every time we
change it. While this is nice and bullet proof, it slows things down
badly for me. QEMU spends about 3 seconds on every start telling KVM what...

26a8ec07 06/28/2013 10:01 pm Kevin Wolf

multiboot: Calculate upper_mem in the ROM

The upper_mem field of the Multiboot information struct doesn't really
contain the RAM size - 1 MB like we used to calculate it, but only the
memory from 1 MB up to the first (upper) memory hole.

In order to correctly retrieve this information, the multiboot ROM now...

cb446eca 06/28/2013 02:25 pm Andreas Färber

kvm: Change cpu_synchronize_state() argument to CPUState

Change Monitor::mon_cpu to CPUState as well.

Reviewed-by: liguang <>
Acked-by: Paolo Bonzini <>
Signed-off-by: Andreas Färber <>

60a3e17a 06/28/2013 02:25 pm Andreas Färber

cpu: Change cpu_exit() argument to CPUState

It no longer depends on CPUArchState, so move it to qom/cpu.c.

Prepares for changing GDBState::c_cpu to CPUState.

Signed-off-by: Andreas Färber <>

39ae4972 06/25/2013 03:00 pm Paul Durrant

Move hardcoded initialization of xen-platform device.

Creation of the xen-platform device is currently hardcoded into machine
type pc's initialization code, guarded by a test for the whether the xen
accelerator is enabled. This patch moves the creation of xen-platform into...

a97d6fe6 06/25/2013 03:00 pm Paul Durrant

Allow use of pc machine type (accel=xen) for Xen HVM domains.

Xen HVM domains normally spawn QEMU with a dedicated xenfv machine type. The
initialization code for this machine type can easily be pulled into the
generic pc initialization code and guarded with a test for whether the xen...

fc744bb1 06/25/2013 02:59 pm Stefano Stabellini

Revert "xen: start PCI hole at 0xe0000000 (same as pc_init1 and qemu-xen-traditional)"

This reverts commit 9f24a8030a70ea4954b5b8c48f606012f086f65f.

The start of the PCI hole is actually set to 0xf0000000 by hvmloader.
In order to retain ABI compatibility with Xen we leave the start of the...

89f204d2 06/24/2013 10:33 pm Anthony Liguori

Merge remote-tracking branch 'kraxel/usb.84' into staging

  1. By Andreas Färber (3) and others
  2. Via Gerd Hoffmann
    • kraxel/usb.84:
      usb: fix serial number for hid devices
      usb: add serial bus property
      usb-host-libusb: set USB_DEV_FLAG_IS_HOST
      usb/host-libusb: Fix building with libusb git master code...
93c8e4dc 06/24/2013 09:41 am Gerd Hoffmann

usb: fix serial number for hid devices

commit 7b074a22dab4bdda9864b933f1bc811a3db42845 changed the serial
number of hid devices. Add compat properties to keep the old serial
number for qemu 0.12 and older.

Signed-off-by: Gerd Hoffmann <>

90527d2a 06/21/2013 09:52 pm Stefan Weil

kvm: Fix potential resource leak (missing fclose)

This leak was detected by cppcheck.

Signed-off-by: Stefan Weil <>
Signed-off-by: Michael Tokarev <>

e1123015 06/19/2013 10:10 pm Markus Armbruster

pc: Make -no-fd-bootchk stick across boot order changes

Option -no-fd-bootchk asks the BIOS to attempt booting from a floppy
even when the boot sector signature isn't there, by setting a bit in
RTC CMOS. It was added back in 2006 (commit 52ca8d6a).

Two years later, commit 0ecdffbb added monitor command boot_set....

371a775d 06/15/2013 01:53 pm Blue Swirl

Merge branch 'realize-isa.v2' of git://github.com/afaerber/qemu-cpu

  • 'realize-isa.v2' of git://github.com/afaerber/qemu-cpu:
    qdev: Drop FROM_QBUS() macro
    isa: QOM'ify ISADevice
    isa: QOM'ify ISABus
    i8259: Convert PICCommonState to use QOM realizefn...
527cd96f 06/14/2013 04:58 pm Markus Armbruster

smbios: Fix -smbios type=0, release=... for big endian hosts

Classic endianness bug due to careless dirty coding: assuming reading
a byte from an int variable gets the least significant byte.

Signed-off-by: Markus Armbruster <>
Reviewed-by: Laszlo "ever the optimist" Ersek <>...

6e5c4540 06/14/2013 04:58 pm Markus Armbruster

smbios: Check R in -smbios type=0, release=R parses okay

Signed-off-by: Markus Armbruster <>
Reviewed-by: Laszlo "ever the optimist" Ersek <>
Message-id:
Signed-off-by: Anthony Liguori <>

5bb95e41 06/14/2013 04:58 pm Markus Armbruster

smbios: Convert to error_report()

Improves diagnistics from ad hoc messages like

Invalid SMBIOS UUID string

to

qemu-system-x86_64: -smbios type=1,uuid=gaga: Invalid UUID

Signed-off-by: Markus Armbruster <>
Reviewed-by: Laszlo "ever the optimist" Ersek <>...

ebc85e3f 06/14/2013 04:58 pm Markus Armbruster

smbios: Clean up smbios_add_field() parameters

Having size precede the associated pointer is odd. Swap them, and fix
up the types.

Signed-off-by: Markus Armbruster <>
Reviewed-by: Laszlo "ever the optimist" Ersek <>
Message-id: ...

8de433cb 06/11/2013 12:33 am Igor Mammedov

pc: Fix crash when attempting to hotplug CPU with negative ID

QMP command "{ 'execute': 'cpu-add', 'arguments': { 'id': 1 }}" may cause
QEMU SIGSEGV at:
piix4_cpu_hotplug_req ()
...
g
>sts[cpu_id / 8] |= (1 << (cpu_id % 8));
...

Since for PC in current implementation id should be in range [0...maxcpus)...

45053fde 06/11/2013 12:33 am Eduardo Habkost

pc: Create pc-*-1.6 machine-types

Some CPU model fixes are going to be included and they will require
compatibility properties in the pc-*-1.5 machine-types.

Signed-off-by: Eduardo Habkost <>
Reviewed-by: Igor Mammedov <>...

ffce9ebb 06/11/2013 12:33 am Eduardo Habkost

target-i386: Update model values on Conroe/Penryn/Nehalem CPU models

The CPUID model values on Conroe, Penryn, and Nehalem are too
conservative and don't reflect the values found on real Conroe, Penryn,
and Nehalem CPUs.

This causes at least one known problems: Windows XP disables sysenter...

4a17cc4f 06/07/2013 03:55 pm Andreas Färber

isa: QOM'ify ISADevice

Rename its parent field and use DEVICE where necessary.

Signed-off-by: Andreas Färber <>

58cd9864 06/07/2013 03:55 pm Andreas Färber

kvm/i8254: QOM'ify some more

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for PIT realizefn.

Signed-off-by: Andreas Färber <>

a15d0912 06/07/2013 03:55 pm Andreas Färber

i8254: Convert PITCommonState to QOM realizefn

Instead of having the parent provide PITCommonClass::init,
let the children override DeviceClass::realize themselves.
This pushes the responsibility for saving and calling the parent's
realizefn to the children....

49fdb0c1 06/07/2013 03:55 pm Andreas Färber

kvm/i8259: QOM'ify some more

Introduce type constant.

Prepares for PIC realizefn.

Signed-off-by: Andreas Färber <>

d2628b7d 06/07/2013 03:55 pm Andreas Färber

i8259: Convert PICCommonState to use QOM realizefn

Instead of having the parent provide PICCommonClass::init,
let the children override DeviceClass::realize themselves.
This pushes the responsibility of saving and calling the parent's
realizefn to the children....

db895a1e 06/07/2013 01:14 pm Andreas Färber

isa: Use realizefn for ISADevice

Drop ISADeviceClass::init and the resulting no-op initfn and let
children implement their own realizefn. Adapt error handling.
Split off an instance_init where sensible.

Signed-off-by: Andreas Färber <>

8819c10b 06/04/2013 10:58 pm Anthony Liguori

Merge remote-tracking branch 'sstabellini/xen_fixes_20130603' into staging

  • sstabellini/xen_fixes_20130603:
    xen: use pc_init_pci instead of pc_init_pci_no_kvmclock
    xen: remove xen_vcpu_init
    xen: start PCI hole at 0xe0000000 (same as pc_init1 and qemu-xen-traditional)...
9f24a803 06/03/2013 06:41 pm Stefano Stabellini

xen: start PCI hole at 0xe0000000 (same as pc_init1 and qemu-xen-traditional)

We are currently setting the PCI hole to start at HVM_BELOW_4G_RAM_END,
that is 0xf0000000.
Start the PCI hole at 0xe0000000 instead, that is the same value used by
pc_init1 and qemu-xen-traditional....

95222d09 06/03/2013 06:41 pm Stefano Stabellini

xen: remove xen_vcpu_init

No need for xen_vcpu_init anymore:

- the RTC emulator doesn't have any periodic timers continuously running
even in absence of guest interactions anymore;

- qemu_dummy_start_vcpu takes care of disabling TCG for us, so we don't...

9cdf79d0 06/03/2013 06:41 pm Stefano Stabellini

xen: use pc_init_pci instead of pc_init_pci_no_kvmclock

Call kvmclock_create only if kvmclock_enabled.
Use pc_init_pci on Xen rather than pc_init_pci_no_kvmclock.

Signed-off-by: Stefano Stabellini <>

58ee9b0a 06/03/2013 06:41 pm Stefano Stabellini

xen_machine_pv: do not create a dummy CPU in machine->init

This fixes a regression introduced by:

commit 62fc403f11523169eb4264de31279745f48e3ecc
Author: Igor Mammedov <>
Date: Mon Apr 29 18:54:13 2013 +0200

target-i386: Attach ICC bus to CPU on its creation...
a88b362c 06/02/2013 06:14 pm Laszlo Ersek

refer to FWCfgState explicitly

Currently some places use pointer-to-void even though they mean
pointer-to-FWCfgState. Clean them up.

Signed-off-by: Laszlo Ersek <>
Reviewed-by: Anthony Liguori <>
Signed-off-by: Michael S. Tsirkin <>

dade922f 05/29/2013 04:15 pm Jordan Justen

isapc: Fix non-KVM qemu boot (read/write memory for isapc BIOS)

The isapc machine with seabios currently requires the BIOS region
to be read/write memory rather than read-only memory.

KVM currently cannot support the BIOS as a ROM region, but qemu
in non-KVM mode can. Based on this, isapc machine currently only...

3459f01b 05/22/2013 03:40 pm Alex Williamson

pci-assign: Add MSI affinity support

To support guest MSI affinity changes update the MSI message any time
the guest writes to the address or data fields.

Signed-off-by: Alex Williamson <>
Acked-by: Michael S. Tsirkin <>...

9e1c2ec8 05/13/2013 05:52 pm Paolo Bonzini

Revert "pc: Kill the "use flash device for BIOS unless KVM" misfeature"

This reverts commit 9953f8822cc316eec9962f0a2858c3439a80adec.
While Markus's analysis is entirely correct, there are 1.6 patches
that fix the bug for real and without requiring machine type hacks....

c7e775e4 05/12/2013 12:25 pm Dong Xu Wang

remove double semicolons

Signed-off-by: Dong Xu Wang <>
Signed-off-by: Michael Tokarev <>

fd8192a5 05/07/2013 02:32 pm Anthony Liguori

Merge remote-tracking branch 'afaerber/qom-cpu' into staging

  1. By Eduardo Habkost (6) and others
  2. Via Andreas Färber
    • afaerber/qom-cpu:
      target-i386: n270 can MOVBE
      target-i386: Introduce generic CPUID feature compat function
      target-i386: Change CPUID model of 486 to 8...
4458c236 05/06/2013 11:27 pm Borislav Petkov

target-i386: n270 can MOVBE

The Atom core (cpu name "n270" in QEMU speak) supports MOVBE. This is
needed when booting 3.8 and later linux kernels built with the MATOM
target because we require MOVBE in order to boot properly now.

Signed-off-by: Borislav Petkov <>...

0c1cd0ae 05/06/2013 02:52 pm Marcelo Tosatti

kvmvapic: add ioport read accessor

Necessary since memory region accessor assumes read and write
methods are registered. Otherwise reading I/O port 0x7e segfaults.

https://bugzilla.redhat.com/show_bug.cgi?id=954306

Signed-off-by: Marcelo Tosatti <>...

0514ef2f 05/02/2013 01:27 am Eduardo Habkost

target-i386: Replace cpuid_*features fields with a feature word array

This replaces the feature-bit fields on both X86CPU and x86_def_t
structs with an array.

With this, we will be able to simplify code that simply does the same
operation on all feature words (e.g. kvm_check_features_against_host(),...

53a89e26 05/01/2013 02:06 pm Igor Mammedov

target-i386: Move APIC to ICC bus

It allows APIC to be hotplugged.

  • map APIC's mmio at board level if it is present
  • do not register mmio region for each APIC, since
    only one is used/mapped

Signed-off-by: Igor Mammedov <>
Signed-off-by: Andreas Färber <>

c649983b 05/01/2013 02:06 pm Igor Mammedov

pc: Implement QEMUMachine::hot_add_cpu hook

Signed-off-by: Igor Mammedov <>
Reviewed-by: Eduardo Habkost <>
Signed-off-by: Andreas Färber <>

f0513d2c 05/01/2013 02:06 pm Igor Mammedov

target-i386: Introduce ICC bus/device/bridge

Provides a hotpluggable bus for APIC and CPU.

  • icc-bridge will serve as a parent for icc-bus and provide
    mmio mapping services to child icc-devices.
  • icc-device will replace SysBusDevice as a parent of APIC...
62fc403f 05/01/2013 02:06 pm Igor Mammedov

target-i386: Attach ICC bus to CPU on its creation

X86CPU should have parent bus so it could provide bus for child APIC.

Signed-off-by: Igor Mammedov <>
Signed-off-by: Andreas Färber <>

baaeda08 05/01/2013 02:04 pm Igor Mammedov

target-i386: Replace MSI_SPACE_SIZE with APIC_SPACE_SIZE

Put APIC_SPACE_SIZE in a public header so that it can be
reused elsewhere later.

Signed-off-by: Igor Mammedov <>
Signed-off-by: Andreas Färber <>

5f8df3ce 05/01/2013 02:04 pm Igor Mammedov

kvmvapic: Make dependency on sysbus.h explicit

Allows kvmvapic to compile if sysbus.h is removed from apic_internal.h,
from which it is indirectly included.
sysbus.h will be removed from apic_internal.h after converting
APICs to ICCDevice.

Signed-off-by: Igor Mammedov <>...

b8b7456d 05/01/2013 02:04 pm Igor Mammedov

pc: Update rtc_cmos on CPU hot-plug

It provides updated currently available CPUs count to BIOS on reboot.

Signed-off-by: Igor Mammedov <>
Signed-off-by: Andreas Färber <>

31050930 05/01/2013 02:04 pm Igor Mammedov

target-i386: Introduce apic-id CPU property

The property is used from board level to set APIC ID for CPUs it
creates. Do so in a new pc_new_cpu() helper, to be reused for hot-plug.

Signed-off-by: Igor Mammedov <>
Reviewed-by: Eduardo Habkost <>...

3ab135f3 04/30/2013 06:30 pm Hu Tao

pvpanic: create pvpanic by default for machine 1.5

Signed-off-by: Paolo Bonzini <>
Signed-off-by: Hu Tao <>
Reviewed-by: Markus Armbruster <>
Message-id: ...

b7da6c60 04/30/2013 05:34 pm Paolo Bonzini

pc_piix: remove undesired change in pc_init1

Introduced when applying commit f81222b (audio: look for the ISA and
PCI buses, 2013-04-18).

Signed-off-by: Paolo Bonzini <>
Message-id: ...

b3e6d591 04/29/2013 08:17 pm Paolo Bonzini

audio: enable PCI audio cards for all PCI-enabled targets

Signed-off-by: Paolo Bonzini <>
Message-id:
Signed-off-by: Anthony Liguori <>

f81222bc 04/29/2013 08:16 pm Paolo Bonzini

audio: look for the ISA and PCI buses

Signed-off-by: Paolo Bonzini <>
Message-id:
Signed-off-by: Anthony Liguori <>

a0881c64 04/29/2013 04:27 pm Andreas Färber

pc: QOM'ify port 92

Introduce type constant and cast macro to obsolete DO_UPCAST().

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <>
Signed-off-by: Andreas Färber <>
Message-id: ...

020c8e76 04/29/2013 04:27 pm Andreas Färber

fdc: QOM'ify ISA floppy controller

Introduce type constant and cast macro to obsolete DO_UPCAST().
Reuse type constant for PC machine compatibility settings.

Prepares for ISA realizefn.

Signed-off-by: Andreas Färber <>
Signed-off-by: Andreas Färber <>...

29bb5317 04/29/2013 04:27 pm Andreas Färber

i8259: QOM cleanups

Eliminate DO_UPCAST() for PICCommonState. Prepares for ISA realizefn.

Also give the i8259_common type registration functions unique names
while at it.

Signed-off-by: Andreas Färber <>
Signed-off-by: Andreas Färber <>...

9953f882 04/24/2013 09:23 pm Markus Armbruster

pc: Kill the "use flash device for BIOS unless KVM" misfeature

Use of a flash memory device for the BIOS was added in series "[PATCH
v10 0/8] PC system flash support", commit 4732dca..1b89faf, v1.1.

Flash vs. ROM is a guest-visible difference. Thus, flash use had to...

36afbc51 04/24/2013 09:23 pm Markus Armbruster

pc: Inline pc_init_pci_1_3() into pc_init_pci_1_2()

Just to make the commit after next easier to review.

Signed-off-by: Markus Armbruster <>
Message-id:
Signed-off-by: Anthony Liguori <>

6fd028f6 04/24/2013 09:23 pm Markus Armbruster

pc: Split pc_init_pci_1_0() off pc_init_pci_1_2()

Just to make the next commit easier to review.

Signed-off-by: Markus Armbruster <>
Message-id:
Signed-off-by: Anthony Liguori <>