Statistics
| Branch: | Revision:

root @ c16b5a2c

# Date Author Comment
c16b5a2c 05/27/2009 05:46 pm Christoph Hellwig

fully split aio_pool from BlockDriver

Now that we have a separate aio pool structure we can remove those
aio pool details from BlockDriver.

Every driver supporting AIO now needs to declare a static AIOPool
with the aiocb size and the cancellation method. This cleans up the...

ad53089b 05/27/2009 05:45 pm Christoph Hellwig

qcow: add qcow_aio_setup helper

[this one is required for [PATCH] fully split aio_pool from BlockDriver,
sorry for not sending it out earlier]

Add a qcow_aio_setup helper to qcow to shared common code between
the aio_readv and aio_writev methods. Based on the function with...

4099df58 05/27/2009 05:45 pm Christoph Hellwig

raw-posix: fix hdev_create

We do need hdev_create unconditionally on all platforms so that qemu-img
create support for host device works on all platforms.

Also relax the check to allow character devices in addition to block
devices. On many Unix platforms block devices have buffered block...

94c6d6d8 05/27/2009 05:45 pm Christoph Hellwig

fix raw_pread_aligned return value

raw_pread_aligned currently returns the raw return value from
lseek/read, which is always -1 in case of an error. But the
callers higher up the stack expect it to return the negated
errno just like raw_pwrite_aligned.
...

afd32160 05/27/2009 05:45 pm Stefan Weil

VNC: Fix memory allocation (wrong structure size).

Pointer vs addresses a VncDisplay structure,
so it is sufficient to allocate sizeof(VncDisplay)
or sizeof(*vs) bytes instead of the much larger
sizeof(VncState).

Maybe the misleading name should be fixed, too:...

91a073a9 05/27/2009 05:45 pm Kevin Wolf

Drop bdrv_create2

This patch converts the remaining users of bdrv_create2 to bdrv_create and
removes the now unused function.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Anthony Liguori <>

a980c98c 05/27/2009 05:45 pm Kevin Wolf

qcow2: Update multiple refcounts at once

Don't write each single changed refcount block entry to the disk after it is
written, but update all entries of the block and write all of them at once.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Anthony Liguori <>

44ff42de 05/27/2009 05:45 pm Kevin Wolf

qcow2: Refactor update_refcount

This is a preparation patch with no functional changes. It moves the allocation
of new refcounts block to a new function and makes update_cluster_refcount (for
one cluster) call update_refcount (for multiple clusters) instead the other way...

ade40677 05/27/2009 05:45 pm Kevin Wolf

qcow/qcow2: Drop synchronous qcow_write()

There is only one (internal) user left and it can be switched to the normal
emulation provided in block.c

Signed-off-by: Kevin Wolf <>
Signed-off-by: Anthony Liguori <>

cab3c825 05/27/2009 05:45 pm Kevin Wolf

e1000: Ignore reset command

When a reset is requested, the current e1000 emulation never clears the
reset bit which may cause a driver to hang. This patch masks the reset
bit out when setting the control registert, so the reset is immediately
completed.
...

8cf07dcb 05/27/2009 05:44 pm Kevin Wolf

Fix output of uninitialized strings

Commit ffad4116b96e29e0fbe892806f97c0a6c903d30d removed the "scratch buffer"
from check_params, but didn't care for the error messages which actually
included this string to tell the user which option was wrong. Now this string...

7696d1ec 05/27/2009 11:49 am Edgar E. Iglesias

microblaze: Conditionalize FDT features.

If libfdt is not available, disable the fdt manipulation features.

Signed-off-by: Edgar E. Iglesias <>

48c50a62 05/27/2009 02:34 am Edgar E. Iglesias

doc: Briefly mention CRIS and MicroBlaze.

Signed-off-by: Edgar E. Iglesias <>

d0f3654f 05/27/2009 02:19 am Edgar E. Iglesias

microblaze: Make writes to MMU_ZPR flush the TLB.

Signed-off-by: Edgar E. Iglesias <>

6b2fce90 05/27/2009 02:10 am Edgar E. Iglesias

microblaze: Correct typo.

Signed-off-by: Edgar E. Iglesias <>

d74d6a99 05/26/2009 10:11 pm Edgar E. Iglesias

microblaze: Add GDB stub support.

Signed-off-by: Edgar E. Iglesias <>

72b675ca 05/26/2009 10:11 pm Edgar E. Iglesias

microblaze: Hook into the build-system.

Signed-off-by: Edgar E. Iglesias <>

6a8b1ae2 05/26/2009 10:10 pm Edgar E. Iglesias

microblaze: Add petalogix s3a1800dsp MMU linux ref-design.

This setup was designed by petalogix and is supported by upstream linux.
The design targets a xilinx spartan-3a-1800 dsp board with MMU.

Signed-off-by: Edgar E. Iglesias <>

b43848a1 05/26/2009 10:10 pm Edgar E. Iglesias

xilinx: Add ethlite emulation.

Signed-off-by: Edgar E. Iglesias <>

ee118d95 05/26/2009 10:10 pm Edgar E. Iglesias

xilinx: Add uartlite emulation.

Signed-off-by: Edgar E. Iglesias <>

388f60b1 05/26/2009 10:10 pm Edgar E. Iglesias

xilinx: Add OPB timer.

Signed-off-by: Edgar E. Iglesias <>

1f07fd1f 05/26/2009 10:10 pm Edgar E. Iglesias

microblaze: Add CPU interrupt wrapper logic.

Signed-off-by: Edgar E. Iglesias <>

17628bc6 05/26/2009 10:10 pm Edgar E. Iglesias

xilinx: Add interrupt controller.

Signed-off-by: Edgar E. Iglesias <>

afeeceb0 05/26/2009 10:10 pm Edgar E. Iglesias

microblaze: Add MMU emulation.

Signed-off-by: Edgar E. Iglesias <>

b779e29e 05/26/2009 10:10 pm Edgar E. Iglesias

microblaze: linux-user support.

Signed-off-by: Edgar E. Iglesias <>

e90e390c 05/26/2009 10:10 pm Edgar E. Iglesias

microblaze: Add disassembler.

Signed-off-by: Edgar E. Iglesias <>

8dfbe4e8 05/26/2009 10:10 pm Edgar E. Iglesias

microblaze: Add syscall, signal and termbits defs for linux-user.

Signed-off-by: Edgar E. Iglesias <>

4acb54ba 05/26/2009 10:10 pm Edgar E. Iglesias

microblaze: Add translation routines.

Signed-off-by: Edgar E. Iglesias <>

370ab986 05/26/2009 05:07 pm Paul Brook

Remove temporary config-host.h

Signed-off-by: Paul Brook <>

067a3ddc 05/26/2009 04:56 pm Paul Brook

Remove qdev irq sink handling

We have both IRQ sinks and GPIO inputs. These are in principle exactly
the same thing, so remove the former.

Signed-off-by: Paul Brook <>

c2fb2637 05/25/2009 08:56 pm Paul Brook

Add dummy command to submakefiles

Add a dummy command to the all: rule in sub-makefiles.
This avoids "Nothing to be done for `all'." messages from make.

Signed-off-by: Paul Brook <>

3c80c6fe 05/24/2009 11:24 pm Paul Brook

Remove unused variable

Signed-off-by: Paul Brook <>

3cb5a223 05/23/2009 10:43 pm Stefan Weil

ETRAX: Removed unused struct entry and fixed Windows build.

"struct timeval last" caused a compilation error with mingw32
(missing header for struct timeval).

It is unused, so it was possible to remove it.

Acked-by: Edgar E. Iglesias <>...

02e2da45 05/23/2009 02:13 am Paul Brook

Add common BusState

Implement and use a common device bus state. The main side-effect is
that creating a bus and attaching it to a parent device are no longer
separate operations. For legacy code we allow a NULL parent, but that
should go away eventually....

4856fcff 05/22/2009 07:44 pm Paul Brook

Fix lance segfaults

Signed-off-by: Paul Brook <>

52368552 05/22/2009 07:22 pm Paul Brook

Avoid errors when curl-config does not exist

Signed-off-by: Paul Brook <>

a2397807 05/22/2009 06:50 pm Jan Kiszka

x86: Add support for resume flag

Signed-off-by: Jan Kiszka <>

00070396 05/22/2009 06:50 pm Anthony Liguori

bios: Use the correct mask to size the PCI option ROM BAR

Bit 0 is the enable bit, which we not only don't want to set, but
it will stick and make us think it's an I/O port resource.

Signed-off-by: Alex Williamson <>
Signed-off-by: Anthony Liguori <>

37cb6fc3 05/22/2009 06:50 pm Jan Kiszka

net: Fix dump time stamps

Signed-off-by: Jan Kiszka <>

40ff1624 05/22/2009 06:50 pm Jason Wessel

serial: fix lost character after sysrq

After creating an automated regression test to test the sysrq
responses while running a linux image in qemu, I found that the
simulated uart was eating the character right after the sysrq about
75% of the time.

The problem is that the qemu sets the LSR_DR (data ready) bit on a...

d55ebf55 05/22/2009 06:50 pm Jason Wessel

USB serial device support

Add in a workaround to allow the usb serial devices to work with the
usb pass through mechanism. The ioctl() to request an alternate
interface will always return < 0 for a usb-serial device based on the
kernel driver. This means there is no alternate interface end point....

769ce76d 05/22/2009 06:50 pm Alexander Graf

Add HTTP protocol using curl v6

Currently Qemu can read from posix I/O and NBD. This patch adds a
third protocol to the game: HTTP.

In certain situations it can be useful to access HTTP data directly,
for example if you want to try out an http provided OS image, but...

8217606e 05/22/2009 06:50 pm Jan Kiszka

Introduce reset notifier order

Add the parameter 'order' to qemu_register_reset and sort callbacks on
registration. On system reset, callbacks with lower order will be
invoked before those with higher order. Update all existing users to the
standard order 0....

d33a1810 05/22/2009 06:50 pm Jan Kiszka

kvm: Rework VCPU reset

Use standard callback with highest order to synchronize VCPU on reset
after all device callbacks were execute. This allows to remove the
special kvm hook in qemu_system_reset.

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

f8d926e9 05/22/2009 06:50 pm Jan Kiszka

kvm: x86: Save/restore KVM-specific CPU states

Save and restore all so far neglected KVM-specific CPU states. Handling
the TSC stabilizes migration in KVM mode. The interrupt_bitmap and
mp_state are currently unused, but will become relevant for in-kernel...

0928a95f 05/22/2009 06:50 pm Jan Kiszka

slirp: Reassign same address to same DHCP client

In case a client restarts a DHCP recovery without releasing its old
address, reassign the same address to prevent consuming free addresses
and moving away from the standard client address.

Signed-off-by: Jan Kiszka <>

7e57f049 05/22/2009 06:50 pm Jason Wessel

usb-serial: implement break event.

Implement the serial break via usb serial.

The second data byte in ftdi status packet contains the break status.
The values were already defined in usb-serial.c so it was a matter of
making use of the event_trigger to form a urb to send over to the host...

4495d6a7 05/22/2009 06:50 pm Jan Kiszka

kvm: Introduce kvm_set_migration_log

Introduce a global dirty logging flag that enforces logging for all
slots. This can be used by the live migration code to enable/disable
global logging withouth destroying the per-slot setting.

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

62518b8b 05/22/2009 06:50 pm Jan Kiszka

kvm: Fix dirty log temporary buffer size

The buffer passed to KVM_GET_DIRTY_LOG requires one bit per page. Fix
the size calculation in kvm_physical_sync_dirty_bitmap accordingly,
avoiding allocation of extremly oversized buffers.

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

151f7749 05/22/2009 06:50 pm Jan Kiszka

kvm: Rework dirty bitmap synchronization

Extend kvm_physical_sync_dirty_bitmap() so that is can sync across
multiple slots. Useful for updating the whole dirty log during
migration. Moreover, properly pass down errors the whole call chain.

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

b0a46a33 05/22/2009 06:50 pm Jan Kiszka

kvm: Add missing bits to support live migration

This patch adds the missing hooks to allow live migration in KVM mode.
It adds proper synchronization before/after saving/restoring the VCPU
states (note: PPC is untested), hooks into
cpu_physical_memory_set_dirty_tracking() to enable dirty memory logging...

93102fd6 05/22/2009 06:50 pm Jan Kiszka

kvm: Fix framebuffer dirty log sync

kvm_physical_sync_dirty_bitmap() takes the end address as second
argument, not the region size. Moverover, the kvm API should not be used
directly here, but cpu_physical_sync_dirty_bitmap().

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

efa84d43 05/22/2009 06:50 pm Kevin Wolf

Convert qemu-img convert to new bdrv_create

This is part two of the qemu-img conversion. This really works the same as the
previous conversion of qemu-img create: It introduces a new -o option for the
generic approach and adds the old-style options to this option set....

73c632ed 05/22/2009 06:50 pm Kevin Wolf

qcow2: Allow different cluster sizes

Add an option to specify the cluster size of a newly created qcow2 image.
Default is 4k which is the same value that was hard-coded before.

Signed-off-by: Kevin Wolf <>
Signed-off-by: Anthony Liguori <>

e69917e2 05/22/2009 06:50 pm Jan Kiszka

kvm: Conditionally apply workaround for KVM slot handling bug

Only apply the workaround for broken slot joining in KVM when the
capability was not found that signals the corresponding fix existence.

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

daa91de2 05/22/2009 06:50 pm Glauber Costa

allow changing the speed of a running migration

This patch allow us to call migrate_set_speed on running
migrations. This should allow mgmt tools to increase the allocated
bandwidth of a running migration if there is no progress, and they
really want the migration to succeed....

d3f24367 05/22/2009 06:50 pm Kevin Wolf

Create qemu-option.h

This patch creates a new header file and the corresponding implementation file
for parsing of parameter strings for options (like used in -drive). Part of
this is code moved from vl.c (so qemu-img can use it later).

The idea is to have a data structure describing all accepted parameters. When...

0e7e1989 05/22/2009 06:50 pm Kevin Wolf

Convert all block drivers to new bdrv_create

Now we can make use of the newly introduced option structures. Instead of
having bdrv_create carry more and more parameters (which are format specific in
most cases), just pass a option structure as defined by the driver itself....

9ea2ea71 05/22/2009 06:50 pm Kevin Wolf

Convert qemu-img create to new bdrv_create

This patch changes qemu-img to actually use the new bdrv_create interface. It
translates the old-style qemu-img options which have been bdrv_create2
parameters or flags so far to option structures. As the generic approach, it...

19629537 05/22/2009 06:50 pm Glauber Costa

introduce set_rate_limit function for QEMUFile

This patch converts the current callers of qemu_fopen_ops().

Signed-off-by: Glauber Costa <>
Signed-off-by: Anthony Liguori <>

c833ab73 05/22/2009 06:50 pm Anthony Liguori

Fix segv when passing an unknown protocol

Signed-off-by: Anthony Liguori <>

976305b7 05/22/2009 06:50 pm Gleb Natapov

Minimal ethernet frame length is 64 bytes.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Anthony Liguori <>

ed8b330b 05/22/2009 06:50 pm Gleb Natapov

Don't send all gratuitous packets at once.

Use timer to separate them in time.

Signed-off-by: Gleb Natapov <>
Signed-off-by: Anthony Liguori <>

9f9e28cd 05/22/2009 06:50 pm Glauber Costa

augment info migrate with page status

This patch augments info migrate output with status about:
  • ram bytes remaining
  • ram bytes transferred
  • ram bytes total

This should be enough for management tools to realize
whether or not there is progress in migration. We can...

71b9b0ca 05/22/2009 06:50 pm Anthony Liguori

Partially revert e20a8dff4c0da3827764924139d3bb73962f5d5a

From Paul Brook:

"the fdc is tied to the ISA DMA engine. We don't currently have a target
independent method of handling inter-device data transfer."

Signed-off-by: Anthony Liguori <>

79eb76ad 05/22/2009 06:50 pm Anthony Liguori

Revert "Fix arm-softmmu breakage"

This reverts commit ec6bd8dea77478f32981a5df49f66ca2430ad19d.

This broke any target that uses virtio. Virtio devices live in libhw and
without whole-archive, the constructors will never be called for virtio.

Signed-off-by: Anthony Liguori <>

993fbfdb 05/22/2009 04:54 am Anthony Liguori

Refactor how display drivers are selected

My previous commit, f92f8afebe, broke -vnc (spotted by Glauber Costa). This
is because it's necessary to tell when the no special display parameters have
been passed and default to SDL or VNC appropriately.

This refactors the display selection logic to be less complicated which has...

0c257437 05/22/2009 04:54 am Anthony Liguori

Introduce is_default field for QEMUMachine

f80f9ec changed the order that machines are registered which had the effect of
changing the default machine. This changeset introduces a new is_default field
so that machine types can declare that they are the default for an architecture....

ec6bd8de 05/21/2009 09:22 pm Blue Swirl

Fix arm-softmmu breakage

Don't use whole-archive for hwlib or libqemu objects

Signed-off-by: Blue Swirl <>

2567f579 05/21/2009 06:54 pm Blue Swirl

Compile most Xen files only once

Signed-off-by: Blue Swirl <>

e20a8dff 05/21/2009 06:54 pm Blue Swirl

Compile fdc, escc and SCSI controllers only once

Signed-off-by: Blue Swirl <>

368b90db 05/21/2009 06:54 pm Blue Swirl

Let the venomous poison spread to more identifiers

Signed-off-by: Blue Swirl <>

f80f9ec9 05/21/2009 04:47 pm Anthony Liguori

Convert machine registration to use module init functions

This cleans up quite a lot of #ifdefs, extern variables, and other ugliness.

Signed-off-by: Anthony Liguori <>

f92f8afe 05/21/2009 04:47 pm Anthony Liguori

Eliminate --disable-gfx-check and make VNC default when SDL not available

--disable-gfx-check predates VNC server support.  It made sense back then
because the only thing you could do without SDL was use -nographic mode or
similar tricks. Since this is a very advanced mode of operation, gfx-check...
eb0b64f7 05/21/2009 04:40 am malc

Do not attempt to allocate sn_tab when there are no snapshots

This was caught by a7d27b536ffc0773028a90f14580552c0c3ddb2a which
aborted on this attempt, thanks to Alex Ivanov for report.

Signed-off-by: malc <>

0a656f5f 05/21/2009 04:30 am malc

Cast pointer arguments of get/setsockopt, send to void * to keep GCC
from producing a warning about pointer type mismatches with Winsock

Signed-off-by: malc <>

9f8fd694 05/20/2009 05:24 pm Mark McLoughlin

kvm: add error message for when SMP is requested

Right now, if you try e.g. '-smp 2' you just get 'failed to
initialize KVM'.

Signed-off-by: Mark McLoughlin <>

42fa1c2e 05/20/2009 05:24 pm Richard W.M. Jones

Remove initrd warning message

Signed-off-by: Richard W.M. Jones <>

e6ade764 05/20/2009 05:12 pm Glauber Costa

keep initrd in below 4g area.

initrd must be kept on the memory area below 4g. By not doing this,
we're seeing guests break while using -initrd and values of -mem
superior to 4096.

Signed-off-by: Glauber Costa <>

e332340a 05/20/2009 05:12 pm Jean-Christophe Dubois

Fix NULL alarm_timer pointer at exit

This fixes a SIGSEGV error on qemu exit.

Here is the valgrind output related to this error

3648 Process terminating with default action of signal 11 (SIGSEGV)
3648 Access not within mapped region at address 0x8...
9ed415b2 05/20/2009 05:12 pm Jean-Christophe Dubois

initialize struct sigevent before timer_create

When qemu is run under valgrind, valgrind shows the following output
on exit:

3648 1 errors in context 2 of 2:
3648 Syscall param timer_create(evp) points to uninitialised byte(s)
3648 at 0x54E936A: timer_create (in /lib/librt-2.9.so)...
e561a280 05/20/2009 05:12 pm Hollis Blanchard

remove gcc 3.x requirement from documentation

This text is no longer accurate. After the patch is applied, the
generated version at http://www.nongnu.org/qemu/qemu-doc.html should be
regenerated.

This patch is also a candidate for the stable branch. (The URL above is...

76ae317f 05/20/2009 05:12 pm Mark McLoughlin

kvm: work around supported cpuid ioctl() brokenness

KVM_GET_SUPPORTED_CPUID has been known to fail to return -E2BIG
when it runs out of entries. Detect this by always trying again
with a bigger table if the ioctl() fills the table.

Signed-off-by: Mark McLoughlin <>

95b134ea 05/20/2009 05:12 pm Uri Lublin

migrate.c: migrate_fd_put_buffer: Do not busyloop: stop writing if EWOULDBLOCK

The migration code is non-blocking, designed for live migration.

Practically migrate_fd_put_buffer busy-loops trying to write, as
on many machines EWOULDBLOCK==EAGAIN (look in include/asm-generic/errno.h)....

3a8bae3e 05/20/2009 02:27 am malc

Remove dead code

Signed-off-by: malc <>

26d64a85 05/19/2009 09:29 pm malc

Format per CODING_STYLE

Signed-off-by: malc <>

a7d27b53 05/19/2009 09:29 pm malc

Abort on attempts to allocate zero bytes

http://marc.info/?t=124267873300015&r=1&w=2

Signed-off-by: malc <>

20094efc 05/19/2009 07:57 pm malc

Unbreak out-of-tree builds

Signed-off-by: malc <>

1ad2134f 05/19/2009 06:17 pm Paul Brook

Hardware convenience library

The only target dependency for most hardware is sizeof(target_phys_addr_t).
Build these files into a convenience library, and use that instead of
building for every target.

Remove and poison various target specific macros to avoid bogus target...

8a637d44 05/19/2009 06:05 pm Paul Brook

Disable >4G ram support on 32-bit targets

If the target only has a 32-bit physical address space then
the code to map >4G ram breaks horribly, and causes compiler warnings.

Signed-off-by: Paul Brook <>

909b69cf 05/19/2009 05:58 pm Paul Brook

Only define __llseek if it is going to be used

Signed-off-by: Paul Brook <>

425be425 05/19/2009 05:42 pm Paul Brook

Avoid implicit truncation compiler warnings

Signed-off-by: Paul Brook <>

bba831e8 05/19/2009 04:52 pm Paul Brook

Remove obsolete BIOS_SIZE from sysemu.h

BIOS_SIZE is no longer needed by vl.c, so there's no point having it in
sysemu.h.

Signed-off-by: Paul Brook <>

fd6dc90b 05/18/2009 11:24 pm Edgar E. Iglesias

cris: First shot at qdev for CRIS interrupts.

Signed-off-by: Edgar E. Iglesias <>

96d7ddde 05/18/2009 10:44 pm Edgar E. Iglesias

etrax: Don't keep the passed irq pointer.

Copy passed irq object at channel connect.

Signed-off-by: Edgar E. Iglesias <>

678fdca8 05/18/2009 10:34 pm Edgar E. Iglesias

etrax: Remove unused eth irq line.

The ethernet blocks irq line to report errors is unimplemented in QEMU.
Remove it for now.

Signed-off-by: Edgar E. Iglesias <>

340d96e7 05/18/2009 08:27 pm Paul Brook

Syborg virtio bindings.

Implement Syborg device bindings for virtio-net.

Signed-off-by: Paul Brook <>

53c25cea 05/18/2009 08:26 pm Paul Brook

Separate virtio PCI code

Split the PCI host bindings from the VRing transport implementation.

Signed-off-by: Paul Brook <>

d8ee7665 05/17/2009 05:26 pm malc

Only shutdown video subsytem in sdl_cleanup

Depending on the order in which atexit handlers are called SDL might
try to join on an audio thread without said thread ever being notified
that it must stop, hence QEMU will forever block in pthread_join call....

89a740e1 05/17/2009 04:55 pm Paul Brook

Consistently use uint64_t for int properties

I apparently failed to do this properly on the first attempt.

Signed-off-by: Paul Brook <>