Statistics
| Branch: | Revision:

root @ a4c075f1

# Date Author Comment
71b12d31 05/20/2011 06:35 pm Christian Borntraeger

s390x: fix smp support for kvm

Currently smp support for kvm does not work. Qemu does a kvm run even on
secondary CPUs which dont have a sane state (initial psw == 0)
triggering some program faults. Architecturally these cpus are in the stopped
state, so we should not do the kvm run ioctl. (these CPUs will be started...

7a86d29a 05/20/2011 06:35 pm Alexander Graf

tcg: extend max tcg opcodes when using 64-on-32bit

When running a 64 bit guest on a 32 bit host, we tend to use more TCG ops
than on a 64 bit host. Reflect that in the reserved opcode amount constant.

Signed-off-by: Alexander Graf <>

a4c075f1 05/20/2011 06:35 pm Ulrich Hecht

s390x: s390x-linux-user support

This patch adds support for running s390x binaries in the linux-user emulation
code.

Signed-off-by: Ulrich Hecht <>
Signed-off-by: Alexander Graf <>

1fddfba1 05/19/2011 01:08 pm Alexander Graf

ahci: Fix non-NCQ accesses for LBA > 16bits

AHCI provides two ways of reading/writing data:

1) NCQ
2) ATA commands with the LBA in the command FIS

In the second code path, we didn't handle any LBAs that were bigger than
16 bits, so whenever a guest that used high LBA numbers wanted to access...

8d278467 05/19/2011 11:26 am Markus Armbruster

block: Remove type hint, it's guest matter, doesn't belong here

No users of bdrv_get_type_hint() left. bdrv_set_type_hint() can make
the media removable by side effect. Make that explicit.

Signed-off-by: Markus Armbruster <>
Signed-off-by: Kevin Wolf <>

95b5edcd 05/19/2011 11:26 am Markus Armbruster

blockdev: Store -drive option media in DriveInfo

DriveInfo is closely tied to -drive, and like -drive, it mixes
information about host and guest part of the block device. Unlike
DriveInfo, BlockDriverState should be about the host part only.

One of the remaining guest bits there is the "type hint". -drive...

d8aeeb31 05/19/2011 11:26 am Markus Armbruster

block QMP: Deprecate query-block's "type", drop info block's "type="

query-block's specification documents response member "type" with
values "hd", "cdrom", "floppy", "unknown".

Its value is unreliable: a block device used as floppy has type
"floppy" if created with if=floppy, but type "hd" if created with...

af6bf132 05/19/2011 11:26 am Markus Armbruster

defaults: ide-cd, ide-hd and scsi-cd devices suppress default CD-ROM

ide-hd has to suppress the default CD-ROM, or else you can't put one
on secondary master without -nodefaults.

Unlike legacy scsi-disk, scsi-cd suppresses default CD-ROM.

Signed-off-by: Markus Armbruster <>...

b443ae67 05/19/2011 11:26 am Markus Armbruster

scsi: Split qdev "scsi-disk" into "scsi-hd" and "scsi-cd"

A "scsi-disk" is either a hard disk or a CD-ROM, depending on the
associated BlockDriverState's type hint. Unclean; disk vs. CD belongs
to the guest part, not the host part.

Have separate qdevs "scsi-hd" and "scsi-cd" to model disk vs. CD in...

1f56e32a 05/19/2011 11:26 am Markus Armbruster

ide: Split qdev "ide-drive" into "ide-hd" and "ide-cd"

An "ide-drive" is either a hard disk or a CD-ROM, depending on the
associated BlockDriverState's type hint. Unclean; disk vs. CD belongs
to the guest part, not the host part.

Have separate qdevs "ide-hd" and "ide-cd" to model disk vs. CD in...

f6a00aa1 05/18/2011 03:39 pm Dmitry Konishchev

qemu_img: is_not_zero() optimization

I run qemu-img under profiler and realized, that most of CPU time is
consumed by is_not_zero() function. I had made a couple of optimizations
on it and got the following output for `time qemu-img convert -O qcow2
volume.qcow2 snapshot.qcow2`:...

77a5a000 05/18/2011 03:39 pm Stefan Hajnoczi

qed: support for growing images

The .bdrv_truncate() operation resizes images and growing is easy to
implement in QED. Simply check that the new size is valid and then
update the image_size header field to reflect the new size.

Signed-off-by: Stefan Hajnoczi <>...

4d29b50a 05/18/2011 03:38 pm Jan Kiszka

ahci: Fix crashes on duplicate BH registration

If ahci_dma_set_inactive is called a while there is still a pending BH
from a previous run, we will crash on the second run of
ahci_check_cmd_bh as it overwrites AHCIDevice::check_bh. Avoid this
broken and redundant duplicate registration....

5fc09ca5 05/18/2011 03:38 pm Stefan Hajnoczi

qemu-tool: Stub out qemu-timer functions

Block drivers may use timers for flushing metadata to disk or
reconnecting to a network drive. Stub out the following functions in
qemu-tool.c:

QEMUTimer *qemu_new_timer_ns(QEMUClock *clock, int scale,
QEMUTimerCB *cb, void *opaque)...

6f321e93 05/18/2011 03:38 pm Stefan Hajnoczi

qed: Periodically flush and clear need check bit

One strategy to limit the startup delay of consistency check when
opening image files is to ensure that the file is marked dirty for as
little time as possible.

QED currently marks the image dirty when the first allocating write...

086cf4d3 05/18/2011 03:38 pm Andrea Arcangeli

ide: cleanup warnings

Add \n.

Signed-off-by: Andrea Arcangeli <>
Signed-off-by: Kevin Wolf <>

5be4aab7 05/18/2011 03:38 pm Kevin Wolf

posix-aio-compat: Fix idle_threads counter

A thread should only be counted as idle when it really is waiting for new
requests. Without this patch, sometimes too few threads are started as busy
threads are counted as idle.

Not sure if it makes a difference in practice outside some artificial...

4ee96418 05/18/2011 03:38 pm Jes Sorensen

qemu-img.c: Remove superfluous parenthesis

Signed-off-by: Jes Sorensen <>
Signed-off-by: Kevin Wolf <>

1e71db30 05/18/2011 03:38 pm Stefan Weil

hw/xen_disk: Remove unused local variable

cppcheck report:
hw/xen_disk.c:309: style:
Variable 'len' is assigned a value that is never used

Cc: Kevin Wolf <>
Signed-off-by: Stefan Weil <>
Signed-off-by: Kevin Wolf <>

2860e3eb 05/18/2011 03:38 pm Kevin Wolf

ide: Turn debug messages into assertions

These printfs aren't really debug messages, but clearly indicate a bug if they
ever become effective. Noone uses DEBUG_IDE, let's re-enable the check
unconditionally and make it an assertion instead of printfs in the device...

3bfe4dbf 05/18/2011 03:38 pm Jes Sorensen

Add documentation for qemu_progress_{init,print}()

Signed-off-by: Jes Sorensen <>
Signed-off-by: Kevin Wolf <>

96d19bcb 05/16/2011 06:15 pm Jan Kiszka

ahci: Unbreak bar registration

Fix regression of 667bb59: ahci_init initializes ahci.mem, so we have to
move bar registration after it.

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

077030d1 05/15/2011 01:34 pm Stefan Weil

w32: Fix missing declaration of ffs()

target-ppc/cpu.h now needs ffs(), too, so ffs() must be declared
before this file is included.

Moving the declaration from qemu-common.h to qemu-os-win32.h
(which is included in qemu-common.h early) fixes the compiler...

1de9756b 05/15/2011 02:05 am Michael Tokarev

set $SDL_VIDEODRIVER=x11 on Linux to prevent sudo kvm from fighting for video card

Signed-off-by: Michael Tokarev <>
Acked-by: Alexander Graf <>
Signed-off-by: Aurelien Jarno <>

60e0df25 05/15/2011 02:02 am Peter Maydell

configure: List available targets in --help output

Include the list of available targets in the --help output
for the --target-list= option.

Signed-off-by: Peter Maydell <>
Acked-by: Stefan Weil <>
Signed-off-by: Aurelien Jarno <>

99e43d36 05/15/2011 02:00 am Aurelien Jarno

target-mips: Fix warning caused by unused local variable

Fix compilation with gcc-4.6, based on a patch from Stefan
Weil <>.

Signed-off-by: Aurelien Jarno <>

7dd31902 05/15/2011 01:35 am Aurelien Jarno

configure: quote kvm_ppc_pvr

b798068d 05/15/2011 01:27 am Stefan Weil

target-lm32: Remove unused local variables

cppcheck report:
target-lm32/translate.c:587: style:
Variable 't0' is assigned a value that is never used
target-lm32/translate.c:588: style:
Variable 'l1' is assigned a value that is never used

Remove both variables. Please check whether that is the correct solution....

605a6aed 05/15/2011 01:22 am Peter Maydell

target-arm: Fix VMLA, VMLS, VNMLS, VNMLA handling of NaNs

Correct handling of NaNs for VFP VMLA, VMLS, VNMLS and VNMLA requires that
we implement the set of negations and additions specified by the ARM ARM;
plausible looking simplifications like turning (-A + B) into (B - A) or...

de1db2a1 05/15/2011 01:13 am Brad Hards

doc: Add explanation that -alt-grab and -ctrl-grab affect special keys

Phillip Merensky reported that the special keys (e.g. Ctrl-Alt-f for full
screen) did not work correctly if -alt-grab is used.

BUG: 696530

Review of ui/sdl.c:sdl_refresh indicates that this is the intended behaviour,...

091959de 05/14/2011 05:54 pm Aurelien Jarno

Merge branch 'ppc-next' of git://repo.or.cz/qemu/agraf

  • 'ppc-next' of git://repo.or.cz/qemu/agraf:
    PPC: Qdev'ify e500 pci
    PPC MPC7544DS: Use new TLB helper function
    PPC: Implement e500 (FSL) MMU
    PPC: Add another 64 bits to instruction feature mask...
86f1f2ae 05/14/2011 10:30 am Blue Swirl

sparc64: fix incorrect BPcc target sign extension

Fix wrong number of bits used when sign extending the branch offset of BPcc
instructions.

Reported-by: Artyom Tarasenko <>
Signed-off-by: Blue Swirl <>

a2589e5c 05/14/2011 10:30 am Blue Swirl

sparc64: fix wrpstate and wrtl on delay slot

Use TCG local to work around TCG register flush due to a branch.

Thanks to Artyom Tarasenko, Igor Kovalenko and Aurelien Jarno.

Signed-off-by: Blue Swirl <>

711c2128 05/12/2011 04:08 pm Anthony Liguori

Merge remote-tracking branch 'stefanha/trivial-patches' into staging

Conflicts:
cpu-all.h

89bb563f 05/12/2011 04:06 pm Anthony Liguori

Merge remote-tracking branch 'agraf/xen-next' into staging

be13cc7a 05/12/2011 01:24 am Alexander Graf

PPC: Qdev'ify e500 pci

The e500 PCI controller isn't qdev'ified yet. This leads to severe issues
when running with -drive.

To be able to use a virtio disk with an e500 VM, let's convert the PCI
controller over to qdev.

Reviewed-by: Paul Brook <>...

ef250db6 05/12/2011 01:24 am Alexander Graf

PPC: Make MPC8544DS obey -cpu switch

The MPC8544DS board emulation code ignored the user defined -cpu switch.
This patch enables it to only provide a sane default, not force an e500v2
CPU inside.

Signed-off-by: Alexander Graf <>

3b989d49 05/12/2011 01:24 am Alexander Graf

PPC: Make MPC8544DS emulation work w/o KVM

The MPC8544DS board emulation was only used with KVM so far, so some
parts of the code didn't provide proper values for non-KVM execution.

This patch makes the machine work without KVM enabled. To actually use
this, you also need proper e500v2 MMU emulation....

71afeb61 05/12/2011 01:24 am Alexander Graf

PPC: Add GS MSR definition

The BookE specification defines MSR bit 28 as Guest State. Add it
to the list of MSR macros.

Signed-off-by: Alexander Graf <>

a5858d7a 05/12/2011 01:24 am Alexander Graf

PPC: Add another 64 bits to instruction feature mask

To enable quick runtime detection of instruction groups to the currently
selected CPU emulation, we have a feature mask of what exactly the respective
instruction supports.

This feature mask is 64 bits long and we just successfully exceeded those 64...

01662f3e 05/12/2011 01:24 am Alexander Graf

PPC: Implement e500 (FSL) MMU

Most of the code to support e500 style MMUs is already in place, but
we're missing on some of the special TLB0-TLB1 handling code and slightly
different TLB modification.

This patch adds support for the FSL style MMU.

Signed-off-by: Alexander Graf <>

5389055a 05/12/2011 01:24 am Alexander Graf

PPC MPC7544DS: Use new TLB helper function

Now that we have some nice helpers that can find us a TLB entry, let's
use that on the machine initialization code, so we don't need to know
about the internals of the TLB array.

Signed-off-by: Alexander Graf <>

7d7ba3fe 05/10/2011 09:10 am David Gibson

Fix off-by-one error in sizing pSeries hcall table

The pSeries machine uses two tables to look up guest hcalls for emulation.
One of these is exactly one entry too small to hold all the hcalls it needs
to, leading to memory corruption.

This patch fixes the bug, and while we're at it, make both tables 'static'...

64e07be5 05/09/2011 11:31 pm Alexander Graf

kvm: ppc: detect old headers

When compiling Qemu with older kernel headers, the PVR setting
mechanism isn't available yet. Unfortunately, back then I didn't add
a capability we could check against, so all we can do is add a configure
test to see if we support PVR setting. For BookE, we don't care yet....

d4d6868f 05/09/2011 11:31 pm Alexander Graf

kvm: ppc: warn user on PAGE_SIZE mismatch

On PPC, the default PAGE_SIZE is 64kb. Unfortunately, the hardware
alignments don't match here: There are RAM and MMIO regions within
a single page when it's 64kb in size.

So the only way out for now is to tell the user that he should use 4k...

446b9165 05/09/2011 11:31 pm Andreas Färber

ppc64: Fix out-of-tree builds

On ppc64 host, recursion into pc-bios/spapr-rtas/ fails for
out-of-tree builds. Add missing dir and symlink.

Cc: David Gibson <>
Cc: Alexander Graf <>
Signed-off-by: Andreas Färber <>...

41019fec 05/09/2011 11:31 pm Anton Blanchard

pseries: Increase maximum CPUs to 256

The original pSeries machine was limited to 32 CPUs, more or less
arbitrarily. Particularly when we get SMT KVM guests it will be
pretty easy to exceed this. Therefore, raise the max number of CPUs
in a pseries machine guest to 256....

5d73dd66 05/09/2011 11:31 pm David Gibson

Make pSeries 'model' property more closely resemble real hardware

Currently, the qemu emulated pseries machine puts
"qemu,emulated-pSeries-LPAR" in the device tree's root level 'model'
property. Unfortunately this confuses some installers and ybin, which...

b4a78527 05/09/2011 11:31 pm David Gibson

Place pseries vty devices at addresses more similar to existing machines

Currently the qemu pseries machine numbers its virtual serial devices
from 0. However, existing pSeries machines running pHyp number them from
0x30000000.

In theory these indices are arbitrary, since everything necessary for the...

d0384d1d 05/09/2011 11:31 pm Andreas Färber

ppc64: Don't try to build sPAPR RTAS on Darwin

The Darwin assembler fails to build it.

Cc: David Gibson <>
Cc: Alexander Graf <>
Signed-off-by: Andreas Färber <>
Signed-off-by: Alexander Graf <>

5666ca4a 05/09/2011 11:31 pm Scott Wood

kvm: ppc: fixes for KVM_SET_SREGS on init

Classic/server ppc has had SREGS for a while now (though I think not
always?), but it's still missing for booke. Check the capability before
calling KVM_SET_SREGS.

Without this, booke kvm fails to boot as of commit...

90dc8812 05/09/2011 11:31 pm Scott Wood

monitor: add PPC BookE SPRs

Read them via KVM_GET_SREGS in kvm_arch_get_registers(),
and display them in "info registers".

Also get CR and PID from the existing KVM_GET_REGS.

Signed-off-by: Scott Wood <>
Signed-off-by: Alexander Graf <>

0225e254 05/09/2011 05:18 pm Stefan Weil

usb-linux: Add missing break statement

cppcheck report:
usb-linux.c:661: warning: Redundant assignment of "len" in switch

Cc: Hans de Goede <>
Cc: Gerd Hoffmann <>
Signed-off-by: Stefan Weil <>
Signed-off-by: Gerd Hoffmann <>

b3e5759e 05/09/2011 11:02 am Gerd Hoffmann

usb-musb: uninline functions

Prototype without "inline" keyword breaks the build with some gcc
versions. Noticed by Alexander Graf.

Fix this by removing the inline keywork everywhere. Some functions
can't be inlined anyway as the are referenced using function pointers....

85097db6 05/08/2011 07:55 pm Richard Henderson

irq: Privatize CPU_INTERRUPT_NMI.

This interrupt name is used by i386, CRIS, and MicroBlaze.
Copy the name into each target.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

9c76219e 05/08/2011 07:55 pm Richard Henderson

irq: Introduce CPU_INTERRUPT_TGT_* defines.

These defines will be place-holders for cpu-specific functionality.
Generic code will, at the end of the patch series, no longer have to
concern itself about how SMI, NMI, etc should be handled. Instead,
generic code will know only that the interrupt is internal or external....

3125f763 05/08/2011 07:55 pm Richard Henderson

irq: Introduce and use CPU_INTERRUPT_SSTEP_MASK.

This mask contains all of the bits that should be ignored while single
stepping in the debugger. The mask contains 2 bits that are not currently
cleared, but are also never set. The bits are included in the mask for...

ce0c6930 05/08/2011 07:55 pm Richard Henderson

target-mips: Do not check CPU_INTERRUPT_TIMER.

This bit is never set, therefore we should not read it either.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

78aa29e4 05/08/2011 07:55 pm Richard Henderson

target-sparc: Do not check CPU_INTERRUPT_TIMER.

This bit is never set, therefore we should not read it either.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

d1520316 05/08/2011 07:55 pm Richard Henderson

irq: Remove CPU_INTERRUPT_TIMER.

It is no longer used anywhere.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

403946c0 05/08/2011 07:55 pm Richard Henderson

target-arm: Privatize CPU_INTERRUPT_FIQ.

This interrupt name was only used by the ARM port.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

00a152b4 05/08/2011 07:55 pm Richard Henderson

target-i386: Privatize some i386-specific interrupt names.

SMI, VIRQ, INIT, SIPI, and MCE are all only used by the i386 port.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

2f172849 05/08/2011 01:59 pm Hannes Reinecke

lsi53c895a: Rename 'sense' to 'status'

The 'sense' field in the HBA status structure is misnamed, as it
actually carries the SCSI status. Rename it.

Signed-off-by: Hannes Reinecke <>
Reviewed-by: Stefan Hajnoczi <>...

6774e44a 05/08/2011 01:44 pm Paolo Bonzini

libcacard: add correct subdirectory dependencies

Signed-off-by: Paolo Bonzini <>
Cc:
Signed-off-by: Stefan Hajnoczi <>

67bd9ede 05/08/2011 12:59 pm Stefan Weil

linux-user: Replace deprecated function

Function bzero is deprecated, so replace it by function memset.

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

5ba18547 05/08/2011 12:59 pm Stefan Weil

Fix spelling in comments (intruction -> instruction)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

7ba4cbbf 05/08/2011 12:59 pm Stefan Weil

ac97: Remove unused local variables

cppcheck report:
hw/ac97.c:1004: style:
Variable 'written' is assigned a value that is never used
hw/ac97.c:1072: style:
Variable 'written' is assigned a value that is never used

Signed-off-by: Stefan Weil <>...

60b14d95 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments (instanciation -> instantiation)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

1301f322 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments (neccessary -> necessary)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

a1c7273b 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments and code (occured -> occurred and related)

The code changed here is an unused data type name (evt_flush_occurred).

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

9cbc67fe 05/08/2011 12:02 pm Stefan Weil

Fix typo in comment (relevent -> relevant)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

e8e3bb2f 05/08/2011 12:02 pm Stefan Weil

Fix typo in comment (responsiblity -> responsibility)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

8186e783 05/08/2011 12:02 pm Stefan Weil

Fix typo in comment (truely -> truly)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

0d50d616 05/08/2011 12:02 pm Stefan Weil

Fix typos in comment (threshhold -> threshold, mapp -> map)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

0c58751c 05/08/2011 12:02 pm Stefan Weil

Fix typo in comment (dieing -> dying)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

4b71051e 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments (imediately -> immediately)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

0cf818c4 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments (existance -> existence)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

ff2712ba 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments (interupt -> interrupt)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

cbae0863 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments (dependancy -> dependency)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

5225d669 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments (accross -> across)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

64c7b9d8 05/08/2011 12:02 pm Stefan Weil

Fix typos in comments (accessable -> accessible, priveleged -> privileged)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

4e9a0b5b 05/08/2011 12:02 pm Stefan Weil

Fix typo in comment (colum -> column)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

a7f22f06 05/08/2011 12:02 pm Stefan Weil

Fix typo in comment (auxilliary -> auxiliary)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

5b46d07d 05/08/2011 12:02 pm Stefan Weil

Fix typo in comment (embeded -> embedded)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

fc27eefe 05/08/2011 12:02 pm Stefan Weil

Fix typo in comment (consistant -> consistent)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

29321335 05/08/2011 11:10 am Anthony PERARD

xen: Set running state in xenstore.

This tells to the xen management tool that the machine can begin run.

Signed-off-by: Anthony PERARD <>
Acked-by: Alexander Graf <>
Signed-off-by: Alexander Graf <>

c9622478 05/08/2011 11:10 am Anthony PERARD

xen: Add Xen hypercall for sleep state in the cmos_s3 callback.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Alexander Graf <>

9c11a8ac 05/08/2011 11:10 am Anthony PERARD

xen: Introduce Xen Interrupt Controller

Every set_irq call makes a Xen hypercall.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Stefano Stabellini <>
Signed-off-by: Alexander Graf <>

432d268c 05/08/2011 11:10 am Jun Nakajima

xen: Introduce the Xen mapcache

On IA32 host or IA32 PAE host, at present, generally, we can't create
an HVM guest with more than 2G memory, because generally it's almost
impossible for Qemu to find a large enough and consecutive virtual
address space to map an HVM guest's whole physical address space....

ea6c5f8f 05/08/2011 11:10 am John Baboval

xen: Adds a cap to the number of map cache entries.

Adds a cap to the number of map cache entries. This prevents the map
cache from overwhelming system memory.

I also removed the bitmap macros and #included bitmap.h instead.

Signed-off-By: John Baboval <>...

050a0ddf 05/08/2011 11:10 am Anthony PERARD

Introduce qemu_put_ram_ptr

This function allows to unlock a ram_ptr give by qemu_get_ram_ptr. After
a call to qemu_put_ram_ptr, the pointer may be unmap from QEMU when
used with Xen.

Signed-off-by: Anthony PERARD <>
Acked-by: Alexander Graf <>...

64b3cfdb 05/08/2011 11:10 am Anthony PERARD

configure: Always use 64bits target physical addresses with xen enabled.

With MapCache, we can handle a 64b target, even with a 32b host/qemu.
So, we need to have target_phys_addr_t to 64bits.

Signed-off-by: Anthony PERARD <>
Acked-by: Alexander Graf <>...

8c12f191 05/08/2011 11:10 am John Baboval

pci: Use of qemu_put_ram_ptr in pci_add_option_rom.

Prevent a deadlock caused by leaving a map cache bucket locked by the
preceding qemu_get_ram_ptr() call.

Signed-off-By: John Baboval <>
Signed-off-by: Anthony PERARD <>...

1291eb35 05/08/2011 11:10 am Anthony PERARD

vl.c: Introduce getter for shutdown_requested and reset_requested.

Introduce two functions qemu_shutdown_requested_get and
qemu_reset_requested_get to get the value of shutdown/reset_requested
without reset it.

Signed-off-by: Anthony PERARD <>...

9ce94e7c 05/08/2011 11:10 am Arun Sharma

xen: Initialize event channels and io rings

Open and bind event channels; map ioreq and buffered ioreq rings.

Signed-off-by: Arun Sharma <>
Signed-off-by: Anthony PERARD <>
Signed-off-by: Stefano Stabellini <>...

3285cf4f 05/08/2011 11:10 am Anthony PERARD

xen: Add initialisation of Xen

The xenpv machine use the common init function.

Signed-off-by: Anthony PERARD <>
Acked-by: Alexander Graf <>
Signed-off-by: Alexander Graf <>

e0e7e67b 05/08/2011 11:10 am Anthony PERARD

pc_memory_init: Move memory calculation to the caller.

This patch moves above_4g_mem_size and below_4g_mem_size calculation in
the caller of pc_memory_init (pc_init1). And the prototype of
pc_memory_init is changed because there is no need anymore to have...

29d3ccde 05/08/2011 11:10 am Anthony PERARD

xen: Add xenfv machine

Introduce the Xen FV (Fully Virtualized) machine to Qemu, some more Xen
specific call will be added in further patches.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Alexander Graf <>

1611977c 05/08/2011 11:10 am Anthony PERARD

pc, Disable vmport initialisation with Xen.

This is because there is not synchronisation of the vcpu register
between Xen and QEMU, so vmport can't work properly.

This patch introduces no_vmport parameter to pc_basic_device_init.

Signed-off-by: Anthony PERARD <>...

41445300 05/08/2011 11:10 am Anthony PERARD

piix_pci: Introduces Xen specific call for irq.

This patch introduces Xen specific call in piix_pci.

The specific part for Xen is in write_config, set_irq and get_pirq.

Signed-off-by: Anthony PERARD <>
Signed-off-by: Stefano Stabellini <>...