Statistics
| Branch: | Revision:

root / hw / kvm @ a1bc20df

# Date Author Comment
a8170e5e 10/23/2012 04:58 pm Avi Kivity

Rename target_phys_addr_t to hwaddr

target_phys_addr_t is unwieldly, violates the C standard (_t suffixes are
reserved) and its purpose doesn't match the name (most target_phys_addr_t
addresses are not target specific). Replace it with a finger-friendly,...

9a3a8895 09/26/2012 06:42 pm Paolo Bonzini

pci-assign: use monitor_handle_fd_param

There is no need to open-code the choice between a file descriptor
number or a named one. Just use monitor_handle_fd_param, which
also takes care of printing the error message.

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

c3ebd3ba 09/10/2012 03:30 pm Jan Kiszka

kvm: i386: Add classic PCI device assignment

This adds PCI device assignment for i386 targets using the classic KVM
interfaces. This version is 100% identical to what is being maintained
in qemu-kvm for several years and is supported by libvirt as well. It is...

205df4d1 08/15/2012 01:23 am Jan Kiszka

kvm: i8254: Cache kernel clock offset in KVMPITState

To prepare the final fix for clock calibration issues with the in-kernel
PIT, we want to cache the offset between vmclock and the clock used by
the in-kernel PIT. So far, we only need to update it when the VM state...

050a4606 08/15/2012 01:23 am Jan Kiszka

kvm: i8254: Finish time conversion fix

0cdd3d1444 fixed reading back the counter load time from the kernel
while assuming the kernel would always update its load time on writing
the state. That is only true for channel 1, and so pit_get_channel_info
returned wrong output pin states for high counter values....

3889c3fa 08/09/2012 04:16 pm Peter Maydell

kvm: Rename kvm_irqchip_set_irq() to kvm_set_irq()

Rename the function kvm_irqchip_set_irq() to kvm_set_irq(),
since it can be used for sending (asynchronous) interrupts whether
there is a full irqchip model in the kernel or not. (We don't
include 'async' in the function name since asynchronous is the...

dcff25f2 06/19/2012 09:32 pm Anthony Liguori

make: automatically include dependencies in recursive subdir rules (v2)

I think I understand enough of what's going on in these rules to ensure this is
right. But I could certainly use a second or third opinion...

Signed-off-by: Anthony Liguori <>

0cdd3d14 06/11/2012 02:18 pm Jan Kiszka

kvm: i8254: Fix conversion of in-kernel to userspace state

Due to a offset between the clock used to generate the in-kernel
count_load_time (CLOCK_MONOTONIC) and the clock used for processing this
in userspace (vm_clock), reading back the output of PIT channel 2 via...

0614cb82 06/11/2012 12:57 pm Jim Meyering

kvm/apic: correct short memset

kvm_put_apic_state's attempt to clear kapic before setting its
bits cleared sizeof(void
) bytes (no more than 8) rather than the
intended 1024 (KVM_APIC_REG_SIZE) bytes. Spotted by coverity.

Signed-off-by: Jim Meyering <>...

ffb8d429 05/17/2012 12:04 am Jan Kiszka

kvm: x86: Wire up MSI support for in-kernel irqchip

Catch writes to the MSI MMIO region in the KVM APIC and forward them to
the kernel. Provide the kernel support GSI routing, this allows to
enable MSI support also for in-kernel irqchip mode.

Signed-off-by: Jan Kiszka <>...

f349c12c 04/13/2012 01:01 am Eric B Munson

kvmclock: guest stop notification

Often when a guest is stopped from the qemu console, it will report spurious
soft lockup warnings on resume. There are kernel patches being discussed that
will give the host the ability to tell the guest that it is being stopped and...

4a8fa5dc 03/14/2012 11:20 pm Andreas Färber

i386 hw/: Don't use CPUState

Scripted conversion:
for file in hw/apic.h hw/kvm/apic.c hw/kvmvapic.c hw/pc.c hw/vmport.c hw/xen_machine_pv.c; do
sed -i "s/CPUState/CPUX86State/g" $file
done

Signed-off-by: Andreas Färber <>
Acked-by: Anthony Liguori <>

03f48b07 03/13/2012 08:23 pm Andreas Färber

kvmclock: Always register type

Currently, the "kvmclock" type is only registered when kvm_enabled().

This breaks when moving type registration to before command line
parsing (so that QOM types can be used for CPU and machine).

Since the QOM classes are lazy-initialized anyway and kvmclock_create()...

5d17c0d2 03/07/2012 12:27 pm Jan Kiszka

kvm: x86: Add user space part for in-kernel i8254

This provides the required user space stubs to enable the in-kernel
i8254 emulation of KVM.

The in-kernel model supports lost tick compensation according to the
"delay" policy. This is enabled by default and can be switched off via a...

5918ff68 03/01/2012 11:26 pm Anthony Liguori

Merge remote-tracking branch 'qemu-kvm/uq/master' into staging

  • qemu-kvm/uq/master:
    pc-bios: update kvmvapic.bin
    kvmvapic: Use optionrom helpers
    optionsrom: Reserve space for checksum
    kvmvapic: Simplify mp/up_set_tpr
    kvmvapic: Introduce TPR access optimization for Windows guests...
e5ad936b 02/18/2012 12:15 pm Jan Kiszka

kvmvapic: Introduce TPR access optimization for Windows guests

This enables acceleration for MMIO-based TPR registers accesses of
32-bit Windows guest systems. It is mostly useful with KVM enabled,
either on older Intel CPUs (without flexpriority feature, can also be...

aa24822b 02/17/2012 05:58 pm Jan Kiszka

i8259: Do not clear level-triggered lines in IRR on init

When an input line is handled as level-triggered, it will immediately
raise an IRQ on the output of a PIC again that goes through an init
reset. So only clear the edge-triggered inputs from IRR in that...

83f7d43a 02/15/2012 05:39 pm Andreas Färber

qom: Unify type registration

Replace device_init() with generalized type_init().

While at it, unify naming convention: type_init([$prefix_]register_types)
Also, type_init() is a function, so add preceding blank line where
necessary and don't put a semicolon after the closing brace....

4cafe606 02/06/2012 06:17 pm Jan Kiszka

KVM: Fix breakages of QOM conversion

KVM APIC and PIC require instance sizes.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Anthony Liguori <>

39bffca2 02/03/2012 06:41 pm Anthony Liguori

qdev: register all types natively through QEMU Object Model

This was done in a mostly automated fashion. I did it in three steps and then
rebased it into a single step which avoids repeatedly touching every file in
the tree.

The first step was a sed-based addition of the parent type to the subclass...

999e12bb 01/27/2012 06:50 pm Anthony Liguori

sysbus: apic: ioapic: convert to QEMU Object Model

This converts three devices because apic and ioapic are subclasses of sysbus.
Converting subclasses independently of their base class is prohibitively hard.

Signed-off-by: Anthony Liguori <>

8f04ee08 01/27/2012 06:50 pm Anthony Liguori

isa: pic: convert to QEMU Object Model

This converts two devices at once because PIC subclasses ISA and converting
subclasses independently is extremely hard.

Signed-off-by: Anthony Liguori <>

680c1c6f 01/19/2012 01:14 pm Jan Kiszka

kvm: x86: Add user space part for in-kernel APIC

This introduces the alternative APIC device which makes use of KVM's
in-kernel device model. External NMI injection via LINT1 is emulated by
checking the current state of the in-kernel APIC, only injecting a NMI...

10b61882 01/19/2012 01:14 pm Jan Kiszka

kvm: x86: Add user space part for in-kernel i8259

Introduce the alternative 'kvm-i8259' device model that exploits KVM
in-kernel acceleration.

The PIIX3 initialization code is furthermore extended by KVM specific
IRQ route setup. GSI injection differs in KVM mode from the user space...

a39c1d47 01/19/2012 01:14 pm Jan Kiszka

kvm: x86: Add user space part for in-kernel IOAPIC

This introduces the KVM-accelerated IOAPIC model 'kvm-ioapic' and
extends the IRQ routing setup by the 0->2 redirection when needed.

The kvm-ioapic model has a property that allows to define its GSI base...

3b9a6ee5 01/19/2012 01:14 pm Jan Kiszka

kvm: Move kvmclock into hw/kvm folder

More KVM-specific devices will come, so let's start with moving the
kvmclock into a dedicated folder.

Signed-off-by: Jan Kiszka <>