History | View | Annotate | Download (15.3 kB)
Merge remote-tracking branch 'kwolf/for-anthony' into staging
Conflicts: block/vmdk.c
Merge remote-tracking branch 'aneesh/for-upstream-7' into staging
hw/9pfs: Add synthetic file system support using 9p
This patch create a synthetic file system with mount tagv_synth when -virtfs_synth command line option is specifiedin qemu. The synthetic file system can be mounted in guestusing 9p using the below command line...
iSCSI block driver
This provides built-in support for iSCSI to QEMU.
This has the advantage that the iSCSI devices need not be made visible to the host, which is useful if you have very many virtual machines and very many iscsi devices.It also has the benefit that non-root users of QEMU can access iSCSI devices across the network without requiring root privilege on the host....
tools: reorganize Makefile variables
- Add all dependencies of the block layer to block-obj-y, and all dependencies of QObject to qobject-obj-y
- Remove the block layer from tools-obj-y, add it to qemu-img, qemu-nbd, qemu-io
- Add qobject-obj-y and tools-obj-y wherever useful, remove duplicates...
main-loop: create main-loop.c
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Merge remote-tracking branch 'aneesh/for-upstream-6' into staging
Conflicts: trace-events
i8259: Move to hw library
No target-specific bits remaining, let's move it over.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
hw: add OpenCores 10/100 Mbps Ethernet controller
This is OpenCores Ethernet MAC + subset of National SemiconductorsDP83838C PHY.OpenCores Ethernet MAC project: http://opencores.org/project,ethmac
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
hw/9pfs: Remove virtio-9p-debug.* infra to be replaced by Qemu Tracing.
Removing the existing debug infrastrucure as proposed to be replaced byQemu Tracing infrastructure.
Reviewed-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>Signed-off-by: Harsh Prateek Bora <harsh@linux.vnet.ibm.com>...
Merge remote-tracking branch 'qemu-kvm-tmp/memory/batch' into staging
Introduce PortioList
Add a type and methods for manipulating a list of disjoint I/O ports,used in some older hardware devices.
Based on original patch by Richard Henderson.
Signed-off-by: Richard Henderson <rth@twiddle.net>Signed-off-by: Avi Kivity <avi@redhat.com>
Merge remote-tracking branch 'qmp/queue/qmp' into staging
PPC: Move openpic to target specific code compilation
The MPIC has some funny feature where it maps different registers to an MMIOregion depending which CPU accesses them.
To be able to reflect that, we need to make OpenPIC be compiled in the targetcode, so it can access cpu_single_env....
qapi: convert query-name
A simple example conversion 'info name'. This also adds the new files forQMP and HMP.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
qapi: use middle mode in QMP server
Use the new middle mode within the existing QMP server.
hw/9pfs: Add handle based fs driver
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
build: Move tracing objects into libuser on usermode emulation targets
This will apply libuser-specific compilation flags (like the ones added by--enable-user-pie), but keep softmmu emulation targets "as-is".
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>...
g364fb: compile in hwlib
Compile g364fb in hwlib. Two compilations less for the full build.
Acked-by: Hervé Poussineau <hpoussin@reactos.org>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
build: fix missing trace dep on GENERATED_HEADERS
fc764105 added an include for qemu-common.h to trace/control.h, whichmade all users of this header file dependent on GENERATED_HEADERS. Sinceit's used by pretty much all the trace backends now, make trace-obj-y...
trace: add "-trace events" argument to control initial state
The "-trace events" argument can be used to provide a file with a list of traceevent names that will be enabled prior to starting execution, thus providingearly tracing.
This saves the user from manually toggling event states through the monitor...
trace: [stderr] add support for dynamically enabling/disabling events
Uses the generic interface provided in "trace/control.h" in order to providea programmatic interface as well as command line and monitor controls.
Signed-off-by: Fabien Chouteau <chouteau@adacore.com>...
build: [simple] Include qemu-timer-common.o in trace-obj-y
Helper programs like qemu-ga use tracing primitives, but qemu-timer-common.o(also used by simpletrace.o) is not necessarily included in the linkage line.
Signed-off-by: Lluís Vilanova <vilanova@ac.upc.edu>
trace: [make] replace 'ifeq' with values in CONFIG_TRACE_*
trace: move backend-specific code into the trace/ directory
trace: avoid conditional code compilation during option parsing
A default implementation for backend-specific routines is provided in"trace/default.c", which backends can override by setting "trace_default=no" in"configure".
Improvements to libtool support.
Improvements to the libtool support in QEMU. Replace hard codedlibtool in the infrastructure with $(LIBTOOL) and allowoverriding the libtool binary used via the configurescript.
Reviewed-by: Andreas F=E4rber <andreas.faerber@web.de>...
guest agent: remove uneeded dependencies
This patch tries to cull any uneeded library dependencies from the guestagent to improve portability across various distros. We do so by beingas explicit as possible about in-tree dependencies rather than relying...
Remove qemu_malloc/qemu_free
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Make glib mandatory and fixup utils appropriately
hw/9pfs: Add yield support to lstat coroutine
hw/9pfs: Add yield support to xattr related coroutine
This include llistxattr and lgetxattr.
hw/9pfs: Add yield support for readdir related coroutines
This include readdir, telldir, seekdir, rewinddir.
hw/9pfs: Add yeild support for readlink
Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
[virtio-9p] Add infrastructure to support glib threads and coroutines.
This patch is originally made by Arun Bharadwaj for glib support.Later Harsh Prateek Bora added coroutines support.This version implemented with suggestions fromStefan Hajnoczi <stefanha@linux.vnet.ibm.com>....
Merge remote-tracking branch 'kiszka/queues/slirp' into staging
Merge remote-tracking branch 'kraxel/usb.22' into staging
usb-hid: split hid code to hw/hid.[ch]
Almost pure code motion. Unstatic hid interface functions and addthem to the header file. Some renames. Some code style cleanups.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
usb: use iovecs in USBPacket
Zap data pointer from USBPacket, add a QEMUIOVector instead.Add a bunch of helper functions to manage USBPacket data.Switch over users to the new interface.
Note that USBPacket->len was used for two purposes: First topass in the buffer size and second to return the number of...
Simple ARP table
This patch adds a simple ARP table in Slirp and also adds handling ofgratuitous ARP requests.
Signed-off-by: Fabien Chouteau <chouteau@adacore.com>Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
block: Add bdrv_co_readv/writev
Add new block driver callbacks bdrv_co_readv/writev, which work on aQEMUIOVector like bdrv_aio_*, but don't need a callback. The function may onlybe called inside a coroutine, so a block driver implementing this interface can...
coroutines: Locks
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
coroutine: introduce coroutines
Asynchronous code is becoming very complex. At the same timesynchronous code is growing because it is convenient to write.Sometimes duplicate code paths are even added, one synchronous and theother asynchronous. This patch introduces coroutines which allow code...
coroutine: implement coroutines using gthread
On platforms that don't support makecontext(3) use gthread basedcoroutine implementation.
Darwin has makecontext(3) but getcontext(3) is stubbed out to returnENOTSUP. Andreas Färber <andreas.faerber@web.de> debugged this and...
Merge remote-tracking branch 'qmp/for-anthony' into staging
USB: add usb network redirection support
This patch adds support for a usb-redir device, which takes a chardevas a communication channel to an actual usbdevice using the usbredir protocol.
Compiling the usb-redir device requires usbredir-0.3 to be installed for...
qapi: add QMP command registration/lookup functions
Registration/lookup functions for that provide a lookup table fordispatching QMP commands.
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>Signed-off-by: Luiz Capitulino <lcapitulino@gmail.com>
qapi: add QMP dispatch functions
Given an object recieved via QMP, this code uses the dispatch tableprovided by qmp_registry.c to call the corresponding marshalling/dispatchfunction and format return values/errors for delivery to the QMP.Currently only synchronous QMP functions are supported, but this will...
Add hard build dependency on glib
GLib is an extremely common library that has a portable thread implementationalong with tons of other goodies.
GLib and GObject have a fantastic amount of infrastructure we can leverage inQEMU including an object oriented programming infrastructure....
qapi: add QAPI visitor core
Base definitions/includes for Visiter interface used by generatedvisiter/marshalling code.
Includes a GenericList type. Our lists require an embedded element.Since these types are generated, if you want to use them in a different...
qapi: add QMP input visitor
A type of Visiter class that is used to walk a qobject'sstructure and assign each entry to the corresponding native C type.Command marshaling function will use this to pull out QMP commandparameters recieved over the wire and pass them as native arguments...
qapi: add QMP output visitor
Type of Visiter class that serves as the inverse of the input visitor:it takes a series of native C types and uses their values to construct acorresponding QObject. The command marshaling/dispatcher functions willuse this to convert the output of QMP functions into a QObject that can...
qapi: add QAPI dealloc visitor
Type of Visitor class that can be passed into a qapi-generated Ctype's visitor function to free() any heap-allocated data types.
Avoid CPU endian memory accesses in devices
Don't compile virtio.c in hwlib, it depends on memory accessesperformed in CPU endianness.
Make loads and stores in CPU endianness unavailable to devicesand poison them to avoid further bugs.
Acked-by: Alexander Graf <agraf@suse.de>...
xen: Clean up build system
Introduce CONFIG_XEN_BACKEND so that this new config solely controls thetarget-independent backend build and CONFIG_XEN can focus on per-targetbuilding.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Signed-off-by: Alexander Graf <agraf@suse.de>
Merge branch 'cocoa-for-upstream' of git://repo.or.cz/qemu/afaerber
libcacard: add libcacard.la target
No flag to configure is required. Instead, added a libcacard.la target thatis not built by default, only when requested explicitly via:
mkdir buildcd build../configuremake libcacard.lamake install-libcacard
Uses libtool to do actual linking of object files and shared library, and...
cocoa: Revert dependency on VNC
In 821601ea5b02a68ada479731a4d3d07a9876632a (Make VNC support optional)cocoa.o was moved from ui-obj-$(CONFIG_COCOA) to vnc-obj-$(CONFIG_COCOA),adding a dependency on $(CONFIG_VNC). That must've been unintentional.
Cc: Jes Sorensen <Jes.Sorensen@redhat.com>...
Merge remote-tracking branch 'jvrao/for-anthony' into staging
virtio: Move virtio-pci to hw library
This module has no target dependencies (except for target_phys_addr_tsize) and can thus be built as part of libhw.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Reviewed-by: Aurelien Jarno <aurelien@aurel32.net>...
Introduce the new error framework
New error-handling framework that allows for exception-like errorpropagation.
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
json-parser: propagate error from parser
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
virtio-9p: Use relative includes for files in hw
Commit 353ac78d495ef976242abd868f68d78420861c2c moved the fileswithout fixing the include paths. It used a modified CFLAGSto add hw to the include search path, but this breaks buildswhere the user wants to set special CFLAGS. Long include paths...
virtio-9p: Move device specific code to virtio-9p-device
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>Signed-off-by: Venkateswararao Jujjuri (JV) <jvrao@linux.vnet.ibm.com>
virtio-9p: Move 9p device registration into virtio-9p.c
This patch move the 9p device registration into its own file
virtio-9p: Don't link to 9p if virtio is not enabled
If virtio is not enabled then we should not pull invirtfs files
usb: add ehci adapter
This patch finally merges the EHCI host adapter aka USB 2.0 support.
Based on the ehci bits collected @ git://git.kiszka.org/qemu.git ehci
EHCI has a long out-of-tree history. Project was started by MarkBurkley, with contributions by Niels de Vos. David S. Ahern continued...
libcacard: add correct subdirectory dependencies
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Cc: qemu-trivial@nongnu.orgSigned-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Fix typos in comments (dependancy -> dependency)
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
virtfs: fix build due from rename
The latest virtfs pull broke the cris-softmmu target.
virtio-9p: move 9p files around
Now that we start adding more files related to 9pfsit make sense to move them to a separate directory
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
ide: Split atapi.c out
Besides moving code, this patch only fixes some whitespace issues in the movedcode and makes all functions in atapi.c static which can be static.
NBD: Use qemu_socket functions to open TCP and UNIX sockets
This commit has the side-effect of making the qemu-nbd binarycapable of binding to IPv6 addresses. ("-b ::1", for instance).block/nbd.c fails to parse IPv6 IP addresses correctly at thispoint, but will work over IPv6 when given a hostname. It still...
qemu-img: Initial progress printing support
This adds the basic infrastructure for supporting progress outputon the command line, as well as progress support for qemu-img commands'rebase' and 'convert'.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>...
ccid: add ccid-card-emulated device
This devices uses libcacard (internal) to emulate a smartcard conformingto the CAC standard. It attaches to the usb-ccid bus. Usage instructions(example command lines) are in the following patch in docs/ccid.txt. Ituses libcacard which uses nss, so it can work with both hw cards and...
trace: move trace objects from Makefile to Makefile.objs
usb-ccid: add CCID bus
A CCID device is a smart card reader. It is a USB device, defined at [1].This patch introduces the usb-ccid device that is a ccid bus. Next patches willintroduce two card types to use it, a passthru card and an emulated card.
[1] http://www.usb.org/developers/devclass_docs/DWG_Smart-Card_CCID_Rev110....
ccid: add passthru card device
The passthru ccid card is a device sitting on the usb-ccid bus andusing a chardevice to communicate with a remote device using theVSCard protocol defined in libcacard/vscard_common.h
Usage docs available in following patch in docs/ccid.txt...
libcacard: initial commit
libcacard emulates a Common Access Card (CAC) which is a standardfor smartcards. It is used by the emulated ccid card introduced ina following patch. Docs are available in docs/libcacard.txt
Signed-off-by: Alon Levy <alevy@redhat.com>...
extract I/O handler lists to iohandler.c
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Make VNC support optional
Per default VNC is enabled.
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
tools: Use real async.c instead of stubs
It's wrong to call BHs directly, even in tools. The only operations thatschedule BHs are called in a loop that (indirectly) contains a call toqemu_bh_poll anyway, so we're not losing the scheduled BHs: Tools either use...
add win32 qemu-thread implementation
For now, qemu_cond_timedwait and qemu_mutex_timedlock are left asPOSIX-only functions. They can be removed later, once the patchesthat remove their uses are in.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
bitmap: add a generic bitmap and bitops library
Add most used bitmap and bitops functions into bitmap.c and bitops.c.Theses functions are mostly copied from Linux kernel source.
Some of these functions are already redefined in the VNC server. Someof them could be used for some block stuff. The yet yo be submitted...
vnc: Add ZRLE and ZYWRLE encodings.
Add ZRLE [1] and ZYWRLE [2] encodings. The code is inspire^W stolenfrom libvncserver (again), but have been rewriten to match QEMU codingstyle.
[1] http://www.realvnc.com/docs/rfbproto.pdf[2] http://micro-vnc.jp/research/remote_desktop_ng/ZYWRLE/publications/...
applesmc: make optional
Based on patch by David Ahern.
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
Set up signalfd under !CONFIG_IOTHREAD
Will be required for SIGBUS handling. For obvious reasons, this willremain a nop on Windows hosts.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
hpet: make optional
Ignore failure with hpet device creation.
x86: make vmmouse optional
Compile vmmouse in hwlib. Ignore failure if vmmouse device can't becreated.
ahci: split ICH9 from core
There are multiple ahci devices out there. The currently implemented ich-9is only one of the many. So let's split that one out into a separate fileto stress the difference.
Signed-off-by: Sebastian Herbszt <herbszt@gmx.de>Signed-off-by: Alexander Graf <agraf@suse.de>...
Merge remote branch 'spice/spice.v29.pull' into staging
spice: add chardev (v5)
Adding a chardev backend for spice, where spice determines whatto do with it based on the name attribute given during chardev creation.For usage by spice vdagent in conjunction with a properly namedvirtio-serial device, and future smartcard channel usage....
qcow2: Add QcowCache
This adds some new cache functions to qcow2 which can be used for cachingrefcount blocks and L2 tables. When used with cache=writethrough they worklike the old caching code which is spread all over qcow2, so for this case wehave merely a cleanup....
usb: data structs and helpers for usb descriptors.
This patch adds hw/usb-desc.[ch] files. They carry data structuresfor various usb descriptors and helper functions to generate usbpackets from the structures.
The intention is to have a internal representation of the device...
build, pci: remove QMP dependency on core PCI code
by introducing pci-stub.c, eliminate QMP dependency on core PCI coderquired by query-pci command.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
qed: Add QEMU Enhanced Disk image format
This patch introduces the qed on-disk layout and implements imagecreation. Later patches add read/write and other functionality.
Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>Signed-off-by: Kevin Wolf <kwolf@redhat.com>
qed: Table, L2 cache, and cluster functions
This patch adds code to look up data cluster offsets in the image viathe L1/L2 tables. The L2 tables are writethrough cached in memory forperformance (each read/write requires a lookup so it is essential tocache the tables)....
qed: Read/write support
This patch implements the read/write state machine. Operations arefully asynchronous and multiple operations may be active at any time.
Allocating writes lock tables to ensure metadata updates do notinterfere with each other. If two allocating writes need to update the...
ahci: add ahci emulation
This patch adds an emulation layer for an ICH-9 AHCI controller. For nowthis controller does not do IDE legacy emulation. It is a pure AHCI controller.
Signed-off-by: Alexander Graf <agraf@suse.de>Signed-off-by: Kevin Wolf <kwolf@redhat.com>
Merge remote branch 'kwolf/for-anthony' into staging