Statistics
| Branch: | Revision:

root @ fb5590f7

# Date Author Comment
36c08d49 02/02/2012 05:51 pm Alexander Graf

linux-user: fake /proc/self/maps

glibc's pthread_attr_getstack tries to find the stack range from
/proc/self/maps. Unfortunately, /proc is usually the host's /proc
which means linux-user guests see qemu's stack there.

Fake the file with a constructed maps entry that exposes the guest's...

480b8e7d 02/02/2012 05:51 pm Alexander Graf

linux-user: fake /proc/self/stat

The boehm gc finds the program's stack starting pointer by
checking /proc/self/stat. Unfortunately, so far it reads
qemu's stack pointer which clearly is wrong.

So let's instead fake the file so the guest program sees the...

257450ee 02/02/2012 05:51 pm Alexander Graf

linux-user: fake /proc/self/auxv

Gtk tries to read /proc/self/auxv to find its auxv table instead of
taking it from its own program memory space.

However, when running with linux-user, we see the host's auxv which
clearly exposes wrong information. so let's instead expose the guest...

50171d42 02/02/2012 05:51 pm 陳韋任

linux-user/main.c: Add option to user-mode emulation so that user can specify log file name

QEMU linux user-mode's default log file name is "/tmp/qemu.log". In order to
change the log file name, user need to modify the source code then recompile
QEMU. This patch allow user use "-D logfile" option to specify the log file...
583359a6 02/02/2012 05:51 pm Akos PASZTORY

linux-user: add SO_PEERCRED support for getsockopt

Signed-off-by: Akos PASZTORY <>
Signed-off-by: Riku Voipio <>

962b289e 02/02/2012 05:51 pm Alexander Graf

linux-user: fix QEMU_STRACE=1 segfault

While debugging some issues with QEMU_STRACE I stumbled over segmentation
faults that were pretty reproducible. Turns out we tried to treat a
normal return value as errno, resulting in an access over array boundaries...

2a7e1245 02/02/2012 05:51 pm Peter Maydell

linux-user/strace.c: Correct errno printing for mmap etc

Correct the printing of errnos for syscalls which are handled
via print_syscall_ret_addr (mmap, mmap2, brk, shmat): errnos
are returned as negative returned values at this level, not
via the host 'errno' variable....

5379557b 02/02/2012 05:51 pm Alexander Graf

linux-user: fix wait* syscall status returns

When calling wait4 or waitpid with a status pointer and WNOHANG, the
syscall can potentially not modify the status pointer input. Now if we
have guest code like:

int status = 0;
waitpid(pid, &status, WNOHANG);...
e3c33ec6 02/02/2012 05:51 pm Peter Maydell

linux-user: Allow NULL value pointer in setxattr and getxattr

It's valid to pass a NULL value pointer to setxattr, so don't
fail this case EFAULT.

Signed-off-by: Peter Maydell <>
Signed-off-by: Riku Voipio <>

30297b55 02/02/2012 05:51 pm Peter Maydell

linux-user/syscall.c: Implement f and l versions of set/get/removexattr

Implement the f and l versions (operate on fd, don't follow links)
of the setxattr, getxattr and removexattr syscalls.

Signed-off-by: Peter Maydell <>
Signed-off-by: Riku Voipio <>

fb5590f7 02/02/2012 05:51 pm Peter Maydell

linux-user: Implement *listxattr syscalls

Implement listxattr, flistxattr and llistxattr syscalls.

Signed-off-by: Peter Maydell <>
Signed-off-by: Riku Voipio <>

125b0f55 02/02/2012 05:51 pm Alexander Graf

linux-user: save auxv length

We create our own AUXV segment on stack and save a pointer to it.
However we don't save the length of it, so any code that wants to
do anything useful with it later on has to walk it again.

Instead, let's remember the length of our AUXV segment. This...

3be14d05 02/02/2012 05:51 pm Alexander Graf

linux-user: add open() hijack infrastructure

There are a number of files in /proc that expose host information
to the guest program. This patch adds infrastructure to override
the open() syscall for guest programs to enable us to on the fly
generate guest sensible files....

d0fd11ff 02/02/2012 05:50 pm Riku Voipio

linux-user: stack_base is now mandatory on all targets

Signed-off-by: Riku Voipio <>

85f94f86 02/01/2012 10:45 pm Jan Kiszka

sdl: Fix block prevention of SDL_WM_GrabInput

Consistently check for SDL_APPINPUTFOCUS before trying to grab the input
focus. Just checking for SDL_APPACTIVE doesn't work. Moving the check to
sdl_grab_start allows for some consolidation.

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

eaa2e027 02/01/2012 10:45 pm Jan Kiszka

Revert "Handle SDL grabs failing (Mark McLoughlin)"

This reverts commit 6bb816031f8bc0aafc3476e6dfa4293ee3a5f106.

SDL_WM_GrabInput does not reliably bail out if grabbing is impossible.
So if we get here, we already lost and will block. But this can no
longer happen due to the check in sdl_grab_start. So this patch became...

822f98d2 02/01/2012 10:45 pm Jan Kiszka

sdl: Grab input on end of non-absolute mouse click

By grabbing the input already on button down, we leave the button in
that state for the host GUI. Thus it takes another click after releasing
the input again to synchronize the mouse button state.

Avoid this by grabbing on button up....

02df4d6f 02/01/2012 10:45 pm Jan Kiszka

sdl: Limit sdl_grab_end in handle_activation to Windows hosts

There are scenarios on Linux with some SDL versions where
handle_activation is continuous invoked with state = SDL_APPINPUTFOCUS
and gain = 0 while we grabbed the input. This causes a ping-pong when we...

6fbcef29 02/01/2012 10:45 pm Jan Kiszka

optionroms: Silence intermediate file removal

The build process of optionroms spits out an "rm ..." line. Moreover, it
removes all .o files that can be handy for debugging purposes. So
disable automatic intermediate removal.

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

ee77dfb2 02/01/2012 10:45 pm Michael Roth

main-loop: Fix SetEvent() on uninitialized handle on win32

The attribute((constructor)) init_main_loop() automatically get
called if qemu-tool.o is linked in. On win32, this leads to
a qemu_notify_event() call which attempts to SetEvent() on a HANDLE that...

d34e8f6e 02/01/2012 10:45 pm Michael Roth

main-loop: For tools, initialize timers as part of qemu_init_main_loop()

In some cases initializing the alarm timers can lead to non-negligable
overhead from programs that link against qemu-tool.o. At least,
setting a max-resolution WinMM alarm timer via mm_start_timer() (the...

771124e1 02/01/2012 10:45 pm Peter Maydell

exec.c: Clarify comment about tlb_flush() flush_global parameter

Clarify the comment about tlb_flush()'s flush_global parameter,
so it is clearer what it does and why it is OK that the implementation
currently ignores it.

Reviewed-by: Andreas F=C3=A4rber <>...

67ed96f9 02/01/2012 10:45 pm Peter Maydell

Makefile: Remove linux-headers/asm symlink on distclean

configure creates a linux-headers/asm symlink. Remove this when
doing a distclean.

Signed-off-by: Peter Maydell <>
Signed-off-by: Anthony Liguori <>

4e4fa398 02/01/2012 10:45 pm Jan Kiszka

qdev: Introduce lost tick policy property

Potentially tick-generating timer devices will gain a common property:
lock_tick_policy. It allows to encode 4 different ways how to deal with
tick events the guest did not process in time:

discard - ignore lost ticks (e.g. if the guest compensates for them...

4f6dd9af 02/01/2012 10:45 pm Jan Kiszka

qemu-option: Introduce default mechanism

This adds qemu_opts_set_defaults, an interface provide default values
for a QemuOpts set. Default options are parsed from a string and then
prepended to the list of existing options, or they serve as the sole
QemuOpts set....

433acf0d 02/01/2012 10:45 pm Jan Kiszka

mc146818rtc: Use lost_tick_policy property

Allow to configure the MC146818 RTC via the new lost tick policy
property and replace rtc_td_hack with this mechanism.

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

25de5935 02/01/2012 10:45 pm Jan Kiszka

Improve default machine options usability

So far we overwrite the machine options completely with defaults if no
accel=value is provided. More user friendly is to fill in only
unspecified options. The new qemu_opts_set_defaults enables this.

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

66596356 02/01/2012 10:45 pm Jan Kiszka

sdl: Do not grab mouse on mode switch while in background

When the mouse mode changes to absolute while the SDL windows is not in
focus, refrain from grabbing the input. It would steal from some other
window.

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

17884d7b 02/01/2012 10:42 pm Sergei Trofimovich

./configure: request pkg-config to provide private libs when static linking

Added wrapper around pkg-config to allow:
- safe options injection via ${QEMU_PKG_CONFIG_FLAGS}
- spaces in path to pkg-config

Signed-off-by: Sergei Trofimovich <>...

5f01e06f 02/01/2012 10:42 pm Sergei Trofimovich

./configure: add link check for nss-smartcard

Current './configure --static && make' fails for me:

LINK  qemu-nbd
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lssl3
/usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lsmime3...
1bdd6874 02/01/2012 10:42 pm Stefan Weil

MAINTAINERS: Add a section for the host OS and a W32 maintainer

Up to now, there was no special section for the different
host operating systems used with QEMU.

scripts/get_maintainer.pl did not show a maintainer for
OS specific files and patches.

Therefore I added three hosts systems:...

23704102 02/01/2012 10:42 pm Aneesh Kumar K.V

hw/9pfs: Update MAINTAINERS file

Acked-by: Venkateswararao Jujjuri <>
Signed-off-by: Aneesh Kumar K.V <>
Signed-off-by: Anthony Liguori <>

1d849502 01/30/2012 09:14 pm Paolo Bonzini

m48t59: use rtc_clock for alarm timer

This lets the RTC get adjustments from the host NTP client.
The watchdog still uses the vm_clock. The previous behavior is
available with "-rtc clock=vm".

Cc: Andreas Färber <>
Reviewed-by: Andreas Färber <>...

0c685d28 01/30/2012 09:13 pm Fabien Chouteau

GRLIB UART: Add RX channel

This patch implements the RX channel of GRLIB UART with a FIFO to
improve data rate.

Signed-off-by: Fabien Chouteau <>
Signed-off-by: Blue Swirl <>

fd39941a 01/29/2012 04:53 pm Avi Kivity

Fix off-by-one in dirty bitmap functions

Reported-by: Stefan Berger <>
Signed-off-by: Avi Kivity <>
Signed-off-by: Blue Swirl <>

9ec032d2 01/28/2012 03:11 pm Blue Swirl

Merge branch 'target-arm.for-upstream' of git://git.linaro.org/people/pmaydell/qemu-arm

  • 'target-arm.for-upstream' of git://git.linaro.org/people/pmaydell/qemu-arm:
    Add Cortex-A15 CPU definition
    Add dummy implementation of generic timer cp15 registers...
0f36036c 01/27/2012 10:55 pm Andreas Färber

unin_pci: Fix typos in device names

Commit 999e12bbe85c5dcf49bef13bce4f97399c7105f4 (sysbus: apic: ioapic:
convert to QEMU Object Model) introduced two typos, one of which broke
the mac99 machine.

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

19b6914a 01/27/2012 06:50 pm Anthony Liguori

virtio-s390: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

73093354 01/27/2012 06:50 pm Anthony Liguori

qdev: change ambiguous qdev names

Reported-by: Blue Swirl <>
Signed-off-by: Anthony Liguori <>

6e4ec3f9 01/27/2012 06:50 pm Andreas Färber

unin_pci: Drop unused reset handler

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

40021f08 01/27/2012 06:50 pm Anthony Liguori

pci: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

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 <>

d148211c 01/27/2012 06:50 pm Anthony Liguori

ide: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

b9eea3e6 01/27/2012 06:50 pm Anthony Liguori

scsi: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

3954d33a 01/27/2012 06:50 pm Anthony Liguori

spapr: convert to QEMU Object Model (v2)

Signed-off-by: Anthony Liguori <>
---
v1 -> v2
- use QOM to check for the default console

f82e35e3 01/27/2012 06:50 pm Anthony Liguori

virtio-serial: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

70f9c987 01/27/2012 06:50 pm Andreas Färber

unin_pci: Clean up qdev names

Add -pcihost to SysBus devices to resolve name conflicts,
and clarify PCI vs. Internal PCI.

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

ff452ace 01/27/2012 06:50 pm Andreas Färber

unin_pci: Drop duplicate busdev

PCIHostState already has a busdev.

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

dbaa7904 01/27/2012 06:50 pm Anthony Liguori

hda-codec: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

e855761c 01/27/2012 06:50 pm Anthony Liguori

qdev: prepare source tree for code conversion

These are various small stylistic changes which help make things more
consistent such that the automated conversion script can be simpler.

It's not necessary to agree or disagree with these style changes because all...

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 <>

62aed765 01/27/2012 06:50 pm Anthony Liguori

usb: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

ba7c0520 01/27/2012 06:50 pm Anthony Liguori

ccid: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

cd6c4cf2 01/27/2012 06:50 pm Anthony Liguori

ssi: convert to QEMU Object Model

Signed-off-by: Anthony Liguori <>

9e07bdf8 01/27/2012 06:50 pm Anthony Liguori

i2c: rename i2c_slave -> I2CSlave

Signed-off-by: Anthony Liguori <>

b5ea9327 01/27/2012 06:50 pm Anthony Liguori

i2c: smbus: convert to QEMU Object Model

This converts two types because smbus is implemented as a subclass of i2c. It's
extremely difficult to convert these two independently.

Signed-off-by: Anthony Liguori <>

94afdadc 01/27/2012 06:50 pm Anthony Liguori

qdev: use a wrapper to access reset and promote reset to a class method

Signed-off-by: Anthony Liguori <>

3cc90eb2 01/27/2012 06:50 pm Anthony Liguori

qdev: add a interface to register subclasses

In order to introduce inheritance while still using the qdev registration
interfaces, we need to be able to use a parent other than TYPE_DEVICE. Add a
new interface that allows this.

Signed-off-by: Anthony Liguori <>

3dde52d2 01/27/2012 06:50 pm Anthony Liguori

qdev: add class_init to DeviceInfo

Since we are still dynamically creating TypeInfo, we need to chain the
class_init function in order to be able to make use of it within subclasses of
TYPE_DEVICE.

This will disappear once we register TypeInfos directly....

f79f2bfc 01/27/2012 06:50 pm Anthony Liguori

qdev: don't access name through info

We already have a QOM interface for this so let's use it.

Signed-off-by: Anthony Liguori <>

30fbb9fc 01/27/2012 06:50 pm Anthony Liguori

qdev: move qdev->info to class

Right now, DeviceInfo acts as the class for qdev. In order to switch to a
proper ObjectClass derivative, we need to ween all of the callers off of
interacting directly with the info pointer.

Signed-off-by: Anthony Liguori <>

d8c51b05 01/27/2012 06:28 pm Anthony Liguori

macio: convert to qdev

This is a "shallow", half hearted, and untested conversion.

Signed-off-by: Anthony Liguori <>

8a5faa1d 01/27/2012 06:28 pm Anthony Liguori

openpic: remove dead code to make a PCI device version

bus is always NULL so the code in this if clause is dead (and therefore
untested).

Signed-off-by: Anthony Liguori <>

6fc4925b 01/27/2012 06:28 pm Anthony Liguori

pci: call reset unconditionally

Because now all PCI devices are converted to qdev.

Signed-off-by: Anthony Liguori <>

2f28d2ff 01/27/2012 06:28 pm Anthony Liguori

qom: add the base Object class (v2)

This class provides the main building block for QEMU Object Model and is
extensively documented in the header file. It is largely inspired by GObject.

Signed-off-by: Anthony Liguori <>
---
v1 -> v2...

32fea402 01/27/2012 06:28 pm Anthony Liguori

qdev: integrate with QEMU Object Model (v2)

This is a very shallow integration. We register a TYPE_DEVICE but only use
QOM as basically a memory allocator. This will make all devices show up as
QOM objects but they will all carry the TYPE_DEVICE.

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

31841e46 01/27/2012 05:00 pm Anthony Liguori

Merge remote-tracking branch 'pmaydell/arm-devs.for-upstream' into staging

  • pmaydell/arm-devs.for-upstream:
    arm: SoC model for Calxeda Highbank
    arm_boot: support board IDs more than 16 bits wide
    arm: add secondary cpu boot callbacks to arm_boot.c
    ahci: add support for non-PCI based controllers...
21fe5bc6 01/27/2012 04:58 pm Anthony Liguori

Merge remote-tracking branch 'kwolf/for-anthony' into staging

  • kwolf/for-anthony: (22 commits)
    scsi: Guard against buflen exceeding req->cmd.xfer in scsi_disk_emulate_command
    qcow: Use bdrv functions to replace file operation
    qcow: Return real error code in qcow_open...
96bab41d 01/27/2012 08:28 am Laszlo Ersek

qemu-io: end aio help text sentences with periods

Signed-off-by: Laszlo Ersek <>
Signed-off-by: Stefan Hajnoczi <>

8c84cf11 01/27/2012 08:26 am Sergei Trofimovich

./configure: export xfs config via --{enable, disable}-xfsctl

Signed-off-by: Sergei Trofimovich <>
Signed-off-by: Stefan Hajnoczi <>

9f2a8d7a 01/27/2012 08:21 am Jan Kiszka

pcnet: Preserve link state across device reset

A device reset does not affect the link state, only set_link does.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Stefan Hajnoczi <>

b1927cf1 01/27/2012 08:20 am Jan Kiszka

e1000: Preserve link state across device reset

A device reset does not affect the link state, only set_link does.

Signed-off-by: Jan Kiszka <>
Signed-off-by: Stefan Hajnoczi <>

c455d17c 01/27/2012 07:50 am Jan Kiszka

qdev-property: Make bit property parsing stricter

By using strncasecmp, we allow for arbitrary characters after the
"on"/"off" string. Fix this by switching to strcasecmp.

Reviewed-by: Andreas Färber <>
Reviewed-by: Markus Armbruster <>...

36945d95 01/27/2012 07:29 am Paolo Bonzini

remove #if 0 code for timers

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

370521a1 01/26/2012 03:49 pm Stefan Hajnoczi

qmp: add block_job_cancel command

Add block_job_cancel, which stops an active block streaming operation.
When the operation has been cancelled the new BLOCK_JOB_CANCELLED event
is emitted.

Signed-off-by: Stefan Hajnoczi <>
Acked-by: Luiz Capitulino <>...

fb5458cd 01/26/2012 03:49 pm Stefan Hajnoczi

qmp: add query-block-jobs

Add query-block-jobs, which shows the progress of ongoing block device
operations.

Signed-off-by: Stefan Hajnoczi <>
Acked-by: Luiz Capitulino <>
Signed-off-by: Kevin Wolf <>

aa398a5c 01/26/2012 03:49 pm Stefan Hajnoczi

blockdev: make image streaming safe across hotplug

Unplugging a storage interface like virtio-blk causes the host block
device to be deleted too. Long-running operations like block migration
must take a DriveInfo reference to prevent the BlockDriverState from...

e8a6bb9c 01/26/2012 03:49 pm Marcelo Tosatti

block: add bdrv_find_backing_image

Add bdrv_find_backing_image: given a BlockDriverState pointer, and an id,
traverse the backing image chain to locate the id.

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

019b8cbf 01/26/2012 03:49 pm Marcelo Tosatti

add QERR_BASE_NOT_FOUND

This qerror will be raised when a given streaming base (backing file)
cannot be found.

Signed-off-by: Marcelo Tosatti <>
Signed-off-by: Stefan Hajnoczi <>
Acked-by: Luiz Capitulino <>...

c8c3080f 01/26/2012 03:49 pm Marcelo Tosatti

block: add support for partial streaming

Add support for streaming data from an intermediate section of the
image chain (see patch and documentation for details).

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

094f1ba1 01/26/2012 03:49 pm Marcelo Tosatti

docs: describe live block operations

Signed-off-by: Marcelo Tosatti <>
Signed-off-by: Stefan Hajnoczi <>
Signed-off-by: Kevin Wolf <>

81b6b9fa 01/26/2012 03:49 pm Stefan Hajnoczi

virtio-blk: add virtio_blk_handle_read trace event

There already exists a virtio_blk_handle_write trace event as well as
completion events. Add the virtio_blk_handle_read event so it's easy to
trace virtio-blk requests for both read and write operations....

641543b7 01/26/2012 03:49 pm Stefan Weil

block/vdi: Zero unused parts when allocating a new block (fix #919242)

The new block was filled with zero when it was allocated by g_malloc0,
but when it was reused later and only partially used, data from the
previously allocated block were still present and written to the new...

84b0ec02 01/26/2012 03:49 pm Li Zhi Hui

qcow: Return real error code in qcow_open

Signed-off-by: Li Zhi Hui <>
Signed-off-by: Kevin Wolf <>

2b16c9ff 01/26/2012 03:49 pm Li Zhi Hui

qcow: Use bdrv functions to replace file operation

Since common file operation functions lack of error detection and use
much more I/O syscalls, so change them to bdrv series functions and
reduce I/O request.

Signed-off-by: Li Zhi Hui <>...

e2f0c49f 01/26/2012 03:49 pm Thomas Higdon

scsi: Guard against buflen exceeding req->cmd.xfer in scsi_disk_emulate_command

Limit the return value (corresponding to the length of the buffer to be
DMAed back to the intiator) to the value in req->cmd.xfer, which is the
amount of data that the initiator expects. Eliminate now-duplicate code...

2d47c6e9 01/26/2012 03:49 pm Stefan Hajnoczi

qmp: add block_job_set_speed command

Add block_job_set_speed, which sets the maximum speed for a background
block operation.

Signed-off-by: Stefan Hajnoczi <>
Acked-by: Luiz Capitulino <>
Signed-off-by: Kevin Wolf <>

12bd451f 01/26/2012 03:49 pm Stefan Hajnoczi

qmp: add block_stream command

Add the block_stream command, which starts copy backing file contents
into the image file. Also add the BLOCK_JOB_COMPLETED QMP event which
is emitted when image streaming completes. Later patches add control
over the background copy speed, cancelation, and querying running...

f8414cb5 01/26/2012 01:49 pm Peter Maydell

arm_boot: support board IDs more than 16 bits wide

Support passing a board ID value to the kernel in r1
that is more than 16 bits wide. This is needed to pass
the '-1 == invalid' value for boards which only support
device tree booting.

Signed-off-by: Peter Maydell <>...

2488514c 01/26/2012 01:49 pm Rob Herring

arm: SoC model for Calxeda Highbank

Adds support for Calxeda's Highbank SoC.

Signed-off-by: Rob Herring <>
Signed-off-by: Mark Langsdorf <>
Signed-off-by: Peter Maydell <>

9d5ba9bf 01/26/2012 01:43 pm Mark Langsdorf

arm: add secondary cpu boot callbacks to arm_boot.c

Create two functions, write_secondary_boot() and secondary_cpu_reset_hook(),
to allow platforms more control of how secondary CPUs are brought up. The
new functions default to NULL and aren't called unless they are populated...

4c0e167c 01/26/2012 01:43 pm Rob Herring

Add xgmac ethernet model

This adds very basic support for the xgmac ethernet core. Missing things
include:

- statistics counters
- WoL support
- rx checksum offload
- chained descriptors (only linear descriptor ring)
- broadcast and multicast handling

Signed-off-by: Rob Herring <>...

d9fa31a3 01/26/2012 01:43 pm Rob Herring

ahci: add support for non-PCI based controllers

Add support for ahci on sysbus.

Signed-off-by: Rob Herring <>
Signed-off-by: Mark Langsdorf <>
Reviewed-by: Andreas Färber <>
Signed-off-by: Peter Maydell <>

7e624667 01/26/2012 12:45 pm Stefan Hajnoczi

coroutine: add co_sleep_ns() coroutine sleep function

Signed-off-by: Stefan Hajnoczi <>
Signed-off-by: Kevin Wolf <>

2d3735d3 01/26/2012 12:45 pm Stefan Hajnoczi

block: check bdrv_in_use() before blockdev operations

Long-running block operations like block migration and image streaming
must have continual access to their block device. It is not safe to
perform operations like hotplug, eject, change, resize, commit, or...

470c0504 01/26/2012 12:45 pm Stefan Hajnoczi

block: make copy-on-read a per-request flag

Previously copy-on-read could only be enabled for all requests to a
block device. This means requests coming from the guest as well as
QEMU's internal requests would perform copy-on-read when enabled.

For image streaming we want to support finer-grained behavior than just...

eeec61f2 01/26/2012 12:45 pm Stefan Hajnoczi

block: add BlockJob interface for long-running operations

Signed-off-by: Stefan Hajnoczi <>
Signed-off-by: Kevin Wolf <>

4f1043b4 01/26/2012 12:45 pm Stefan Hajnoczi

block: add image streaming block job

Signed-off-by: Stefan Hajnoczi <>
Signed-off-by: Kevin Wolf <>

5094a6c0 01/26/2012 12:45 pm Stefan Hajnoczi

block: rate-limit streaming operations

This patch implements rate-limiting for image streaming. If we've
exceeded the bandwidth quota for a 100 ms time slice we sleep the
coroutine until the next slice begins.

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

031380d8 01/26/2012 12:39 pm Stefan Hajnoczi

block: replace unchecked strdup/malloc/calloc with glib

Most of the codebase as been converted to use glib memory allocation
functions. There are still a few instances of malloc/calloc in the
block layer and qemu-io. Replace them, especially since they do not...