Gerd Hoffmann [Thu, 6 May 2010 09:13:11 +0000 (11:13 +0200)]
switch stdvga to pci vgabios
Make stdvga provide the new vgabios binary (with pcibios support)
using the PCI option rom bar. Seabios will happily load it from
there. The new vga bios will also lookup the framebuffer address
in pci config space, so the magic bochs lfb @ 0xe0000000 is not
needed any more -> zap it.
Without the patch:
# dmesg | grep framebuffer
vesafb: framebuffer at 0xe0000000, mapped to 0xf7e80000, using 1875k, total 8192k
# lspci -vs2
00:02.0 VGA compatible controller: Technical Corp. Device 1111 (prog-if 00 [VGA controller])
Subsystem: Qumranet, Inc. Device 1100
Physical Slot: 2
Flags: fast devsel
Memory at
f0000000 (32-bit, prefetchable) [size=8M]
Expansion ROM at <unassigned> [disabled]
With patch applied:
# dmesg | grep framebuffer
vesafb: framebuffer at 0xf0000000, mapped to 0xf7e80000, using 1875k, total 8192k
# lspci -vs2
00:02.0 VGA compatible controller: Technical Corp. Device 1111 (prog-if 00 [VGA controller])
Subsystem: Qumranet, Inc. Device 1100
Physical Slot: 2
Flags: fast devsel
Memory at
f0000000 (32-bit, prefetchable) [size=8M]
Expansion ROM at
f0800000 [disabled] [size=64K]
cheers,
Gerd
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Gerd Hoffmann [Mon, 23 Aug 2010 10:10:46 +0000 (12:10 +0200)]
Add new vgabios binaries to blobs list.
aliguori: update VGA BIOS
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Gerd Hoffmann [Thu, 11 Nov 2010 12:07:52 +0000 (13:07 +0100)]
add copyright to spiceaudio
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
Gerd Hoffmann [Tue, 9 Nov 2010 16:29:46 +0000 (17:29 +0100)]
spice: add audio
Add support for the spice audio interface. With this patch applied
audio can be forwarded over the network from/to the spice client. Both
recording and playback is supported.
The driver is first in the driver list, but the can_be_default flag is
set only in case spice is active. So if you have the spice protocol
enabled the spice audio driver is the default one, otherwise whatever
comes first after spice in the list. Overriding the default using
QEMU_AUDIO_DRV works in any case.
[ v2: audio codestyle: add spaces before open parenthesis ]
[ v2: add const to silence array ]
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Cc: malc <av1474@comtv.ru>
Signed-off-by: malc <av1474@comtv.ru>
Gerd Hoffmann [Tue, 9 Nov 2010 16:28:38 +0000 (17:28 +0100)]
intel-hda: fix codec addressing.
The HDA bus supports up to 15 codecs, with addresses 0 ... 14.
We get that wrong in two places:
* When handing out addresses we accept address 15 as valid.
* The bitmasks for two registers (WAKEEN and STATESTS) don't
have bit 14 set.
This patch fixes it.
[ v2: codestyle: add braces ]
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
malc [Tue, 9 Nov 2010 16:14:15 +0000 (19:14 +0300)]
Revert "intel-hda: fix codec addressing."
Misses braces
This reverts commit
acc086837e49b44f15eff6007bb1726844df7aec.
Gerd Hoffmann [Tue, 9 Nov 2010 10:47:49 +0000 (11:47 +0100)]
intel-hda: fix codec addressing.
The HDA bus supports up to 15 codecs, with addresses 0 ... 14.
We get that wrong in two places:
* When handing out addresses we accept address 15 as valid.
* The bitmasks for two registers (WAKEEN and STATESTS) don't
have bit 14 set.
This patch fixes it.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
Gerd Hoffmann [Tue, 9 Nov 2010 10:47:48 +0000 (11:47 +0100)]
intel-hda: add msi support
This patch adds MSI support to the intel hda audio driver. It is
enabled by default, use '-device intel-hda,msi=0' to disable it.
[ v2: codestyle: add braces ]
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
Gerd Hoffmann [Tue, 9 Nov 2010 10:47:47 +0000 (11:47 +0100)]
intel-hda: update irq status on WAKEEN changes.
When the guest updates the WAKEEN register we
must re-calculate the IRQ status.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
François Revol [Tue, 9 Nov 2010 10:47:46 +0000 (11:47 +0100)]
intel-hda: Honor WAKEEN bits.
HDA: Honor WAKEEN bits when deciding to raise an interrupt on codec
status change. This prevents an interrupt storm with the Haiku HDA
driver which does not handle codec status changes in the irq handler.
Signed-off-by: François Revol <revol@free.fr>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
Gerd Hoffmann [Tue, 9 Nov 2010 10:47:45 +0000 (11:47 +0100)]
hda-audio: exit cleanup
Add exit callback to the driver. Unregister the sound card properly
on exit.
[ v2: codestyle: add braces ]
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
Gerd Hoffmann [Tue, 9 Nov 2010 10:47:44 +0000 (11:47 +0100)]
intel-hda: exit cleanup
Add pci exit callback for the intel-hda device and cleanup properly.
Also add an exit callback to the HDA bus implementation and make sure
it is called on qdev_free().
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
Blue Swirl [Sun, 7 Nov 2010 15:10:40 +0000 (15:10 +0000)]
Fix win32 build
Fix a return value change missed by
205ef7961f781496366e0a93a4ec621ad3724bd7.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Kevin Wolf [Wed, 27 Oct 2010 11:15:27 +0000 (13:15 +0200)]
scsi-disk: Fix immediate failure of bdrv_aio_*
Fix scsi-disk to use the usual completion paths that involve rerror/werror
handling instead of directly completing the requests in cases where
bdrv_aio_readv/writev returns NULL.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Wed, 27 Oct 2010 11:10:15 +0000 (13:10 +0200)]
virtio-blk: Handle immediate flush failure properly
Fix virtio-blk to use the usual completion path that involves werror handling
instead of directly completing the request in cases where bdrv_aio_flush
returns NULL.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Wed, 27 Oct 2010 11:04:15 +0000 (13:04 +0200)]
ide: Handle immediate bdrv_aio_flush failure
If bdrv_aio_flush returns NULL, this should be treated as an error.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Blue Swirl [Sat, 30 Oct 2010 16:46:27 +0000 (16:46 +0000)]
block: avoid a warning on 64 bit hosts with long as int64_t
When building on a 64 bit host which uses 'long' for int64_t,
GCC emits a warning:
CC block/blkverify.o
/src/qemu/block/blkverify.c: In function `blkverify_verify_readv':
/src/qemu/block/blkverify.c:304: warning: long long int format, long
unsigned int arg (arg 3)
Rework
a77cffe7e916f4dd28f2048982ea2e0d98143b11 to avoid the warning.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Thu, 28 Oct 2010 14:16:00 +0000 (16:16 +0200)]
qcow2: Invalidate cache after failed read
The cache content may be destroyed after a failed read, better not use it any
more.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Kevin Wolf [Fri, 22 Oct 2010 14:17:57 +0000 (16:17 +0200)]
vpc: Implement bdrv_flush
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Mon, 25 Oct 2010 14:40:17 +0000 (16:40 +0200)]
scsi-disk: Implement werror for flushes
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Kevin Wolf [Mon, 25 Oct 2010 10:43:22 +0000 (12:43 +0200)]
scsi-disk: Complete failed requests in scsi_disk_emulate_command
This pulls the request completion for error cases from the caller to
scsi_disk_emulate_command. This should not change semantics, but allows to
reuse scsi_handle_write_error() for flushes in the next patch.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Kevin Wolf [Thu, 21 Oct 2010 14:43:43 +0000 (16:43 +0200)]
block: Allow bdrv_flush to return errors
This changes bdrv_flush to return 0 on success and -errno in case of failure.
It's a requirement for implementing proper error handle in users of bdrv_flush.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Kevin Wolf [Mon, 25 Oct 2010 12:52:21 +0000 (14:52 +0200)]
scsi-disk: Implement rerror option
This implements the rerror option for SCSI disks.
It also includes minor changes to the write path where the same code is used
that was criticized in the review for the changes to the read path required for
rerror support.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Jes Sorensen [Mon, 1 Nov 2010 19:02:23 +0000 (20:02 +0100)]
Fold send_all() wrapper unix_write() into one function
The current send_all() wrapper for POSIX calls does nothing but call
unix_write(). Merge them to simplify the code.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Jes Sorensen [Thu, 21 Oct 2010 15:15:49 +0000 (17:15 +0200)]
Remove obsolete 'f' double parameter type
'f' double is no longer used, and we should be using floating point
variables to store byte sizes. Remove it.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Jes Sorensen [Thu, 21 Oct 2010 15:15:48 +0000 (17:15 +0200)]
Switch migrate_set_speed() to take an 'o' argument rather than a float.
Clarify default value of MB in migration speed argument in monitor, if
no suffix is specified. This differ from previous default of bytes,
but is consistent with the rest of the places where we accept a size
argument.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Jes Sorensen [Thu, 21 Oct 2010 15:15:47 +0000 (17:15 +0200)]
Add support for 'o' octet (bytes) format as monitor parameter.
Octet format relies on strtosz which supports K/k, M/m, G/g, T/t
suffixes and unit support for humans, like 1.3G
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Jes Sorensen [Thu, 21 Oct 2010 15:15:46 +0000 (17:15 +0200)]
Introduce strtosz() library function to convert a string to a byte count.
strtosz() returns -1 on error. It now supports human unit formats in
eg. 1.0G, with better error handling.
The following suffixes are supported:
B/b = bytes
K/k = KB
M/m = MB
G/g = GB
T/t = TB
This patch changes -numa and -m input to use strtosz().
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Gerd Hoffmann [Mon, 1 Nov 2010 15:57:48 +0000 (16:57 +0100)]
intel-hda: documentation update
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
Blue Swirl [Mon, 1 Nov 2010 18:09:38 +0000 (18:09 +0000)]
Fix out of tree build
df2943ba3c73ca21dbda063f15fa3e80064af864 broke out of tree build.
Fix breakage by adding $(SRC_PATH).
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Anthony Liguori [Mon, 1 Nov 2010 18:02:56 +0000 (13:02 -0500)]
Merge remote branch 'spice/config.2' into staging
Anthony Liguori [Mon, 1 Nov 2010 15:33:45 +0000 (10:33 -0500)]
Merge remote branch 'mst/for_anthony' into staging
malc [Mon, 1 Nov 2010 14:44:23 +0000 (17:44 +0300)]
hda-audio: Zap tabs
Signed-off-by: malc <av1474@comtv.ru>
Gerd Hoffmann [Mon, 1 Nov 2010 12:05:32 +0000 (13:05 +0100)]
Add Intel HD Audio support to qemu.
This patch adds three devices to qemu:
intel-hda
Intel HD Audio Controller, the PCI device. Provides a HDA bus.
Emulates ICH6 at the moment. Adding a ICH9 PCIE
variant shouldn't be hard.
hda-duplex
HDA Codec. Attaches to the HDA bus. Supports 16bit stereo,
rates 16k -> 96k, playback, recording and volume control
(with CONFIG_MIXEMU=y).
hda-output
HDA Codec without recording support. Subset of the hda-duplex
codec. Use this if you don't want your guests access your mic.
Usage: add '-device intel-hda -device hda-duplex' to your command line.
Tested guests:
* Linux works.
* Win7 works.
* DOS (mpxplay) works.
* WinXP doesn't work.
[ v2 changes ]
* Fixed endianess, big endian hosts work now.
* Fixed some emulation bugs.
* Added immediate command emulation.
* Added vmstate support.
* Make it behave like all other sound card drivers:
- can be configured via '--audio-card-list=hda'
- can be added to a VM using '-soundhw hda'
* Code style fixups.
* Zapped guest-triggerable asserts.
* Handle partial reads/writes of audio data correctly.
Cc: malc <av1474@comtv.ru>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
Gerd Hoffmann [Mon, 1 Nov 2010 14:51:54 +0000 (15:51 +0100)]
add VMSTATE_BOOL
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Signed-off-by: malc <av1474@comtv.ru>
malc [Sun, 31 Oct 2010 21:53:19 +0000 (00:53 +0300)]
Remove trailing whitespace
Signed-off-by: malc <av1474@comtv.ru>
Blue Swirl [Sun, 31 Oct 2010 09:24:14 +0000 (09:24 +0000)]
sparc32: convert debug printf statements to tracepoints
Replace debug printf statements with tracepoints.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:27 +0000 (10:39 +0200)]
Remove unncessary includes
No need to include stdlib.h for BSD as it is included by
qemu-common.h, windows.h is handled by sysemu.h and osdep.c no longer
needs malloc.h
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:26 +0000 (10:39 +0200)]
Consolidate oom_check() functions
This consolidates the duplicated oom_check() functions, as well as
splitting them into OS dependant versions to avoid the #ifdef
grossness that was present in the old osdep.c version.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:25 +0000 (10:39 +0200)]
Separate qemu_pidfile() into OS specific versions
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:24 +0000 (10:39 +0200)]
Do not redefine reserved key-words TRUE/FALSE
TRUE/FALSE are generally reserved keywords and shouldn't be defined in
a driver like this. Rename the macros to SDP_TRUE and SDP_FALSE
respectively.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:23 +0000 (10:39 +0200)]
Move qemu_gettimeofday() to OS specific files
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:22 +0000 (10:39 +0200)]
We only support eventfd under POSIX, move qemu_eventfd() to os-posix.c
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:21 +0000 (10:39 +0200)]
qemu_pipe() is used only by POSIX code, so move to oslib-posix.c
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:20 +0000 (10:39 +0200)]
Move osdep socket code to oslib-{posix,win32}.c
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Jes Sorensen [Tue, 26 Oct 2010 08:39:19 +0000 (10:39 +0200)]
Move QEMU OS dependant library functions to OS specific files
This moves library functions used by both QEMU and the QEMU tools,
such as qemu-img, qemu-nbd etc. from osdep.c to oslib-{posix,win32}.c
In addition it introduces oslib-obj.y to the Makefile set to be
included by the various targets, instead of relying on these library
functions magically getting included via block-obj-y.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Stefan Weil [Fri, 22 Oct 2010 21:03:33 +0000 (23:03 +0200)]
target-xxx: Use fprintf_function (format checking)
fprintf_function uses format checking with GCC_FMT_ATTR.
Format errors were fixed in
* target-i386/helper.c
* target-mips/translate.c
* target-ppc/translate.c
Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Stefan Weil [Fri, 22 Oct 2010 21:03:32 +0000 (23:03 +0200)]
exec: Use fprintf_function for dump_exec_info (format checking)
fprintf_function uses format checking with GCC_FMT_ATTR.
It is declared in qemu-common.h and used in cpu-all.h
(which is included from cpu.h), so qemu-common.h must
be included earlier. Some redundant include statements
for standard include files were removed.
Fix also two format errors (ptrdiff_t needs %td).
Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Stefan Weil [Fri, 22 Oct 2010 21:03:31 +0000 (23:03 +0200)]
tcg: Use fprintf_function (format checking)
fprintf_function uses format checking with GCC_FMT_ATTR.
Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Stefan Weil [Fri, 22 Oct 2010 21:03:30 +0000 (23:03 +0200)]
Add fprintf_function for function pointers to fprintf-like functions
This kind of function pointers is used very often in qemu.
The new data type uses format checking with GCC_FMT_ATTR
and will be used in later patches.
Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
malc [Fri, 29 Oct 2010 21:41:01 +0000 (01:41 +0400)]
Mov muldiv64 to qemu-common.h (Thus unbreaking gus)
Signed-off-by: malc <av1474@comtv.ru>
Michael S. Tsirkin [Wed, 27 Oct 2010 17:07:10 +0000 (19:07 +0200)]
Merge branch 'pci' into for_anthony
Michael S. Tsirkin [Wed, 27 Oct 2010 15:48:42 +0000 (17:48 +0200)]
pcie: update satus on reset
Reset never triggers a new event, so it's enough to
update status.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Michael S. Tsirkin [Wed, 27 Oct 2010 14:28:22 +0000 (16:28 +0200)]
msi: minor cleanups
Comment fixup (tell what it does not what it does not do),
typo fix, whitespace fix.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Michael S. Tsirkin [Wed, 27 Oct 2010 14:14:56 +0000 (16:14 +0200)]
msi: simplify range checks
config write handlers should be idempotent.
So no need for complex range checks: a simple
one checking that we are touching the relevant capability
will do.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Michael S. Tsirkin [Wed, 27 Oct 2010 14:01:25 +0000 (16:01 +0200)]
pci: improve w1c mask handling
- save/restore must not check w1c bits
since they are in fact guest controlled
- clear w1c bits on reset
Note: for express there are different kinds of
reset, some leave part of config space alone.
We will likely need a sticky bit mask to implement this.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Michael S. Tsirkin [Mon, 25 Oct 2010 05:46:47 +0000 (07:46 +0200)]
pcie: clean up hot plug notification
Simplify logic for hotplug notification, by tracking state of the
logical interrupt condition. We then simply use this variable to make
the interrupt decision, according to spec.
API is made cleaner as we no longer force users to pass in
old slot control value.
Includes fixes by Isaku Yamahata.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Michael S. Tsirkin [Mon, 25 Oct 2010 05:03:24 +0000 (07:03 +0200)]
pcie: simplify range check
Simplify code slighly by reversing the polarity
for the range check
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Blue Swirl [Sat, 18 Sep 2010 05:53:14 +0000 (05:53 +0000)]
Introduce range.h
Extract range functions from pci.h. These will be used by later patches
by non-PCI devices. Adjust current users.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
(cherry picked from commit
bf1b00712375bea65f2254dea8281fa646eebbd5)
Michael S. Tsirkin [Tue, 26 Oct 2010 15:53:41 +0000 (17:53 +0200)]
qemu-options.def: add to generated header list
All files include qemu-options.h which pulls in qemu-options.def from
the root directory. Thus generating qemu-options.def from Makefile.objs
under the target directory is not effective.
Further, people expect .def file to get cleaned with make clean:
it does not have state so no reason to defer removing it
until distclean. Also add a rule to remove old files that might
be around.
This fixes the error: ‘QEMU_OPTION_spice’ undeclared
(first use in this function) error that some people reported
which is really down to an out of date .def file.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Jason Wang [Mon, 25 Oct 2010 05:39:59 +0000 (13:39 +0800)]
net: properly handle illegal fd/vhostfd from command line
When hanlding fd/vhostfd form command line through net_handle_fd_param(),
we need to check mon and return value of strtol() otherwise we could
get segmentation fault or invalid fd when user type an illegal fd/vhostfd.
This patch is based on the suggestions from
Luiz Capitulino <lcapitulino@redhat.com>.
Signed-off-by: Jason Wang <jasowang@redhat.com>
Reviewed-by: Luiz Capitulino <lcapitulino@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Michael S. Tsirkin [Sun, 17 Oct 2010 18:23:48 +0000 (20:23 +0200)]
virtio: sanity-check available index
Checking available index upon load instead of
only when vm is running makes is easier to
debug failures.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Michael S. Tsirkin [Sun, 17 Oct 2010 18:43:40 +0000 (20:43 +0200)]
migration: don't segfault on invalid input
host_from_stream_offset returns NULL on error,
return error instead of trying to use that address,
to avoid segfault on invalid stream.
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Anthony Liguori [Tue, 26 Oct 2010 14:51:03 +0000 (09:51 -0500)]
Merge remote branch 'qmp/for-anthony' into staging
Anthony Liguori [Tue, 26 Oct 2010 14:50:58 +0000 (09:50 -0500)]
Merge remote branch 'kwolf/for-anthony' into staging
Anthony Liguori [Mon, 25 Oct 2010 21:06:45 +0000 (16:06 -0500)]
seabios: Update to 0.6.1
-
0ff9051 Update version to 0.6.1
-
9c000e6 Support Samsung SE-S084 USB DVD drive (and probably many others)
-
eebe949 pciinit: remove unused variable, old_addr, in pci_set_io_region_addr().
-
06644f4 Minor - indentation change to jpeg.c.
-
2dcd9fa Enhance tools/readserial.py to support reading from a pipe.
-
7ce09ae Make tools/transdump.py more resilient to unknown input.
-
6039fc5 Update qemu_cfg_read to use "rep insb".
-
9a01a9c Only show bootsplash during boot menu.
-
5feb83c add write support to virtio-blk
-
22f6378 Don't try to talk to APIC on 486
-
e2074bf Add ACPI SSDT/DSDT support for CPU hotplug.
-
eb6dc78 Add additional debug status messages to bootsplash code.
-
c8e4e88 Allow qemu to use bootsplash code via fwcfg interface.
-
597040d Add tools/trandump.py tool for converting hexdump() output.
-
48f5f8b Default bootsplash on (for coreboot users).
-
8d85eb1 Autodetect video mode based on bootsplash jpeg dimensions.
-
b2b9d4a Rename "decdata" to "jpeg" in bootsplash - to be consistent with jpeg.c.
-
bbc4722 Breakup jpeg_decode into parsing and displaying phases.
-
2976dd4 Avoid using BSS variables in jpeg.c.
-
cc9e1bf Add FUNC16() helper macro for converting a 16bit func to a segoff_s.
-
b4525a0 Handle unaligned sizes in iomemcpy().
-
0e27e19 Cleanup bootsplash vesa signature detection.
-
cadaf0e Be sure to disable bootsplash on all BIOS boot cases.
-
2641186 Add call16_int10 helper to bootsplash.c.
-
6dc76f4 Don't do "double buffering" in bootsplash code.
-
227dc3e Check that malloc succeeds in bootsplash code.
-
a576c9c Bootsplash fixes and cleanups.
-
9fd4851 Minor - clarify bit logic in mptable.c.
-
abf31d3 Fix integer truncating bug in calc_future_timer().
-
1d5c333 seabios: pciinit: fix 64bit bar initilization.
-
ae6924d Minor - introduce GDT_GRANLIMIT macro.
-
0f78889 Avoid code addresses >64K in big real mode.
-
aec19c9 seabios: smm: move out piix4 specific smram logic to dev-i440fx.c
-
08328e7 seabios: shadow: make device finding more generic.
-
4c67f90 seabios: acpi: clean up of finding pm device.
-
fe54a53 seabios: acpi: split out piix4 pm logic.
-
d06afb4 seabios: acpi: move acpi definitions to acpi.h from acpi.c
-
2f54bb4 seabios: acpi: move out endian conversion helper function.
-
23173ac seabios: pci: introduce helper function to find device from table and initialize it.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Blue Swirl [Sat, 23 Oct 2010 15:24:07 +0000 (15:24 +0000)]
qemu-timer: move commonly used timer code to qemu-timer-common
Move timer init functions to a new file, qemu-timer-common.c. Make other
critical timer functions inlined to preserve performance in
qemu-timer.c, also move muldiv64() (used by the inline functions)
to qemu-timer.h.
Adjust block/raw-posix.c and simpletrace.c to use get_clock() directly.
Remove a similar/duplicate definition in qemu-tool.c.
Adjust hw/omap_clk.c to include qemu-timer.h because muldiv64() is used
there.
After this change, tracing can be used also for user code and
simpletrace on Win32.
Cc: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Acked-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Paolo Bonzini [Thu, 21 Oct 2010 08:18:40 +0000 (10:18 +0200)]
rewrite i386 tests Makefile
1) compute path to i386 compiler from configure. If it is found, run
the i386 tests. I use macros so that this approach could be applied
for other arches as well.
2) provide an easily extensible way to add tests
Most tests fail, but at least "make test" does something meaningful.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Paolo Bonzini [Thu, 21 Oct 2010 08:18:39 +0000 (10:18 +0200)]
fix test_path
path.c grew quite a few new dependencies (mostly via cutils.c),
include them.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Paolo Bonzini [Thu, 21 Oct 2010 08:18:38 +0000 (10:18 +0200)]
make runcom compile on recent distributions
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Paolo Bonzini [Thu, 21 Oct 2010 08:18:37 +0000 (10:18 +0200)]
disable test_enter on i386, it is broken
Many other tests fail, but this has an infinite loop with both
qemu-i386 and native execution (albeit on x86_64), so there is
something more going on. I'm not going to debug it now, so just
disable the test.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Paolo Bonzini [Thu, 21 Oct 2010 08:18:36 +0000 (10:18 +0200)]
unbreak "make" from vpath-built tests directory
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Paolo Bonzini [Thu, 21 Oct 2010 08:18:35 +0000 (10:18 +0200)]
unbreak "make" from tests directory
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Blue Swirl [Fri, 22 Oct 2010 18:26:08 +0000 (18:26 +0000)]
mips_fulong2e: fix ram allocation
RAM registration used incorrect offset.
Fix by using the offset obtained previously for this purpose.
Spotted by GCC 4.6.0
20100925 warning, which is also avoided.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Stefan Weil [Wed, 13 Oct 2010 18:54:27 +0000 (20:54 +0200)]
Replace remaining gcc format attributes by macro GCC_FMT_ATTR (format checking)
Replace the remaining format attribute printf by macro
GCC_FMT_ATTR which uses gnu_printf (if supported).
v2
* Removal of dyngen specific code is now done in a separate patch.
* Handle attribute in new ui/spice-display.c, too.
Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Stefan Weil [Wed, 13 Oct 2010 18:54:26 +0000 (20:54 +0200)]
Remove special handling of system include files (no longer needed)
The formerly used dyngen code did not work with
system include files like stdio.h.
Tests with Linux, OSX and Win32 show that this
restriction is no longer needed.
So we hopefully can remove that special piece of code.
This results in cleaner code and allows better use of
the new GCC_FMT_ATTR macro.
Cc: Blue Swirl <blauwirbel@gmail.com>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Anthony Liguori [Fri, 22 Oct 2010 13:02:14 +0000 (08:02 -0500)]
Merge remote branch 'qemu-kvm/uq/master' into staging
Kevin Wolf [Wed, 20 Oct 2010 11:17:30 +0000 (13:17 +0200)]
virtio-blk: Respect werror option for flushes
The werror option now affects not only write requests, but also flush requests.
Previously, it was not possible to stop a VM on a failed flush.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Mon, 18 Oct 2010 15:13:05 +0000 (17:13 +0200)]
ide: Handle flush failure
Instead of always assuming success for bdrv_aio_flush, actually do something
with the error. This respects the werror option and accordingly ignores the
error, reports it to the guest or stops the VM and retries after cont.
Ignoring the error is trivial, obviously. For stopping the VM and retrying
later old code can be reused, but we need to introduce a new status for "retry
a flush". For reporting to the guest, fortunately the same action is required
as for a failed read/write (status = DRDY | ERR, error = ABRT), so this code
can be reused as well.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Mon, 18 Oct 2010 15:10:49 +0000 (17:10 +0200)]
ide: Factor ide_flush_cache out
The next patch reuses this code, so put it in its own function.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Thu, 14 Oct 2010 13:46:04 +0000 (15:46 +0200)]
qemu-img: Fix qemu-img convert -obacking_file
The old -B option caused a backing file to be used for the converted image and
to avoid copying clusters from the old backing file. When replaced with
-obacking_file, qemu-img convert does assign the backing file to the new image,
but it doesn't realize that it should avoid copying clusters from the backing
file.
This patch checks the -o options for a backing_file and applies the same logic
as for -B in this case.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Stefan Weil [Fri, 24 Sep 2010 19:02:05 +0000 (21:02 +0200)]
block: Use GCC_FMT_ATTR and fix a format error
Adding the gcc format attribute detects a format bug
which is fixed here.
v2:
Don't use type cast. BDRV_SECTOR_SIZE is unsigned long long,
so %lld should be the correct format specifier.
Cc: Blue Swirl <blauwirbel@gmail.com>
Cc: Kevin Wolf <kwolf@redhat.com>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Thu, 16 Sep 2010 11:18:08 +0000 (13:18 +0200)]
qemu-io: New command map
The new map command in qemu-io lists all allocated/unallocated areas in an
image file.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
edison [Wed, 22 Sep 2010 02:58:41 +0000 (19:58 -0700)]
Copy snapshots out of QCOW2 disk
In order to backup snapshots, created from QCOW2 iamge, we want to copy snapshots out of QCOW2 disk to a seperate storage.
The following patch adds a new option in "qemu-img": qemu-img convert -f qcow2 -O qcow2 -s snapshot_name src_img bck_img.
Right now, it only supports to copy the full snapshot, delta snapshot is on the way.
Changes from V1: all the comments from Kevin are addressed:
Add read-only checking
Fix coding style
Change the name from bdrv_snapshot_load to bdrv_snapshot_load_tmp
Signed-off-by: Disheng Su <edison@cloud.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Christoph Hellwig [Mon, 4 Oct 2010 13:29:41 +0000 (15:29 +0200)]
ide: set WCACHE supported in IDENTIFY data
ATA does not only have the WCACHE enabled bit in identify word 85, but also
a WCACHE supported bit in word 82. While the Linux kernel is fine with the
latter at least hdparm also needs the former before correctly displaying
the cache settings. There's also a non-zero chance other operating systems
are more picky in their volatile write cache detection.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Mon, 14 Jun 2010 13:15:03 +0000 (15:15 +0200)]
qcow2: Remove old image creation function
They have been #ifdef'd out by the previous patch.
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kevin Wolf [Fri, 11 Jun 2010 19:37:37 +0000 (21:37 +0200)]
qcow2: Simplify image creation
Instead of doing lots of magic for setting up initial refcount blocks and stuff
create a minimal (inconsistent) image, open it and initialize the rest with
regular qcow2 functions.
This is a complete rewrite of the image creation function. The old
implementating is #ifdef'd out and will be removed by the next patch (removing
it here would have made the diff unreadable because diff tries to find
similarities when it's really a rewrite)
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Stefan Hajnoczi [Mon, 18 Oct 2010 15:53:53 +0000 (16:53 +0100)]
qcow2: Support exact L1 table growth
The L1 table grow operation includes a size calculation that bumps up
the new L1 table size in order to anticipate the size needs of vmstate
data. This helps reduce the number of times that the L1 table has to be
grown when vmstate data is appended.
This size overhead is not necessary during image creation,
bdrv_truncate(), or snapshot goto operations. In fact, existing
qemu-iotests that exercise table growth are no longer able to trigger it
because image creation preallocates an L1 table that is too large after
changes to qcow_create2().
This patch keeps the size calculation but also adds exact growth for
callers that do not want to inflate the L1 table size unnecessarily.
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Kusanagi Kouichi [Wed, 20 Oct 2010 09:00:01 +0000 (18:00 +0900)]
monitor: Ignore "." and ".." when completing file name.
Signed-off-by: Kusanagi Kouichi <slash@ac.auone-net.jp>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Jan Kiszka [Tue, 19 Oct 2010 14:03:15 +0000 (16:03 +0200)]
Fix test suite build with tracing enabled
qemu_malloc instrumentations require linking against the trace objects.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Acked-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Jan Kiszka [Sat, 16 Oct 2010 17:42:43 +0000 (19:42 +0200)]
Silence compiler warning in json test case
This avoids
error: zero-length gnu_printf format string
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Hidetoshi Seto [Thu, 14 Oct 2010 00:51:02 +0000 (09:51 +0900)]
Trivial fix for QMP/qmp-events.txt
Fix example of STOP event that was just copy-and-pasted.
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Samuel Thibault [Tue, 19 Oct 2010 17:48:20 +0000 (19:48 +0200)]
curses: Fix control-{@[\]^_} and ESC
control-{@[\]^_} shouldn't get the 'a' - 'A' offset for correct
translation. ESC is better simulated as escape key.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Signed-off-by: Andrew Zaborowski <balrogg@gmail.com>
Marcelo Tosatti [Thu, 21 Oct 2010 15:35:04 +0000 (13:35 -0200)]
kvm: save/restore x86-64 MSRs on x86-64 kernels
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Marcelo Tosatti [Thu, 21 Oct 2010 15:35:03 +0000 (13:35 -0200)]
kvm: writeback SMP TSCs on migration only
commit
6389c45441269baa2873e6feafebd17105ddeaf6
Author: Jan Kiszka <jan.kiszka@siemens.com>
Date: Mon Mar 1 18:17:26 2010 +0100
qemu-kvm: Cleanup/fix TSC and PV clock writeback
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Marcelo Tosatti [Thu, 21 Oct 2010 15:35:02 +0000 (13:35 -0200)]
kvm: factor out kvm_has_msr_star
And add kvm_has_msr_hsave_pa(), to avoid warnings on older
kernels without support.
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Marcelo Tosatti [Thu, 21 Oct 2010 15:35:01 +0000 (13:35 -0200)]
kvm: add save/restore of MSR_VM_HSAVE_PA
commit
2bba4446746add456ceeb0e8359a43032a2ea333
Author: Alexander Graf <agraf@suse.de>
Date: Thu Dec 18 15:38:32 2008 +0100
Enable nested SVM support in userspace
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Hidetoshi Seto [Thu, 21 Oct 2010 08:23:14 +0000 (17:23 +0900)]
Fix build on !KVM_CAP_MCE
This patch removes following warnings:
target-i386/kvm.c: In function 'kvm_put_msrs':
target-i386/kvm.c:782: error: unused variable 'i'
target-i386/kvm.c: In function 'kvm_get_msrs':
target-i386/kvm.c:1083: error: label at end of compound statement
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Hidetoshi Seto [Thu, 21 Oct 2010 08:47:06 +0000 (17:47 +0900)]
x86, mce: broadcast mce depending on the cpu version
There is no reason why SRAO event received by the main thread
is the only one that being broadcasted.
According to the x86 ASDM vol.3A 15.10.4.1,
MCE signal is broadcast on processor version 06H_EH or later.
This change is required to handle SRAR in smp guests.
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Hidetoshi Seto [Thu, 21 Oct 2010 08:46:49 +0000 (17:46 +0900)]
x86, mce: ignore SRAO only when MCG_SER_P is available
And restruct this block to call kvm_mce_in_exception() only when it is
required.
Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>