- Jul 07, 2014
-
-
Peter Maydell authored
PowerPC Reference Platform (PReP) * Update OpenHack'Ware firmware to replace QEMU-side workarounds # gpg: Signature made Mon 07 Jul 2014 15:49:42 BST using RSA key ID 3E7E013F # gpg: Good signature from "Andreas Färber <afaerber@suse.de>" # gpg: aka "Andreas Färber <afaerber@suse.com>" * remotes/afaerber/tags/prep-for-2.1: prep: Update ppc_rom.bin prep: Remove CPU reset entry point hack related to OpenHack'Ware prep: Remove PCI memory hack related to OpenHack'Ware Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Peter Maydell authored
pc,vhost,virtio fixes, test Bugfixes all over the place. There's a non bugfix here: re-enabling the vhost-user test, though the patch just brings back functionality that I disabled earlier to fix mingw build failures. This is now sorted, and keeping the unit test enabled seems important since the feature relies on an external server to work, so isn't easy to test. Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> # gpg: Signature made Sun 06 Jul 2014 11:01:35 BST using RSA key ID D28D5469 # gpg: Good signature from "Michael S. Tsirkin <mst@kernel.org>" # gpg: aka "Michael S. Tsirkin <mst@redhat.com>" * remotes/mst/tags/for_upstream: qemu-char: add chr_add_watch support in mux chardev virtio-pci: fix MSI memory region use after free qdev: Fix crash when using non-device class name on -global qdev: Don't abort() in case globals can't be set hw/virtio: enable common virtio feature for mmio device acpi: fix typo in memory hotplug MMIO region name pci: assign devfn to pci_dev before calling pci_device_iommu_address_space() Handle G_IO_HUP in tcp_chr_read for tcp chardev virtio: move common virtio properties to bus class device pc-dimm: error out if memory hotplug is not enabled numa: check for busy memory backend qtest: enable vhost-user-test Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Andreas Färber authored
This replaces QEMU-side workarounds for PCI BARs and CPU reset. Signed-off-by:
Andreas Färber <andreas.faerber@web.de>
-
Hervé Poussineau authored
Signed-off-by:
Hervé Poussineau <hpoussin@reactos.org> Signed-off-by:
Andreas Färber <andreas.faerber@web.de>
-
Hervé Poussineau authored
Signed-off-by:
Hervé Poussineau <hpoussin@reactos.org> Signed-off-by:
Andreas Färber <andreas.faerber@web.de>
-
Peter Maydell authored
Block pull request # gpg: Signature made Mon 07 Jul 2014 13:27:20 BST using RSA key ID 81AB73C8 # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" # gpg: aka "Stefan Hajnoczi <stefanha@gmail.com>" * remotes/stefanha/tags/block-pull-request: qmp: show QOM properties in device-list-properties dataplane: submit I/O as a batch linux-aio: implement io plug, unplug and flush io queue block: block: introduce APIs for submitting IO as a batch ahci: map memory via device's address space instead of address_space_memory raw-posix: Fix raw_getlength() to always return -errno on error qemu-iotests: Disable Quorum testing in 041 when Quorum is not builtin ahci.c: mask unused flags when reading size PRDT DBC MAINTAINERS: add Stefan Hajnoczi to IDE maintainers mirror: Fix qiov size for short requests Fix nocow typos in manpage Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Peter Maydell authored
* remotes/sstabellini/xen_arm_20140707: xen: build on ARM xen_backend: introduce xenstore_read_uint64 and xenstore_read_fe_uint64 Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Stefano Stabellini authored
Collection of fixes to build QEMU with Xen support on ARM: - use xenstore_read_fe_uint64 to retrieve the page-ref (xenfb); - use xen_pfn_t instead of unsigned long in xenfb; - unsigned long/xenpfn_t in xen_remove_from_physmap; - in xen-mapcache.c use HOST_LONG_BITS to check for QEMU's address space size. Signed-off-by:
Stefano Stabellini <stefano.stabellini@eu.citrix.com> Reviewed-by:
Peter Maydell <peter.maydell@linaro.org>
-
Stefano Stabellini authored
Signed-off-by:
Stefano Stabellini <stefano.stabellini@eu.citrix.com> Reviewed-by:
Peter Maydell <peter.maydell@linaro.org>
-
Stefan Hajnoczi authored
Devices can use a mix of qdev and QOM properties. Currently only the qdev properties are displayed by device-list-properties. This patch extends the property enumeration algorithm to also display QOM properties (excluding the implicit "type", "realized", "hotpluggable", and "parent_bus" properties). When a qdev property exists, use the qdev type name to preserve backwards compatibility. QOM type names can be different for bool (qdev on/off) and str (used by qdev pointers). Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Ming Lei authored
Before commit 580b6b2a(dataplane: use the QEMU block layer for I/O), dataplane for virtio-blk submits block I/O as a batch. This commit 580b6b2a replaces the custom linux AIO implementation(including submit I/O as a batch) with QEMU block layer, but this commit causes ~40% throughput regression on virtio-blk performance, and removing submitting I/O as a batch is one of the causes. This patch applies the newly introduced bdrv_io_plug() and bdrv_io_unplug() interfaces to support submitting I/O at batch for Qemu block layer, and in my test, the change can improve throughput by ~30% with 'aio=native'. Following my fio test script: [global] direct=1 size=4G bsrange=4k-4k timeout=40 numjobs=4 ioengine=libaio iodepth=64 filename=/dev/vdc group_reporting=1 [f] rw=randread Result on one of my small machine(host: x86_64, 2cores, 4thread, guest: 4cores): - qemu master: 65K IOPS - qemu master with these patches: 92K IOPS - 2.0.0 release(dataplane using custom linux aio): 104K IOPS Reviewed-by:
Paolo Bonzini <pbonzini@redhat.com> Signed-off-by:
Ming Lei <ming.lei@canonical.com> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Ming Lei authored
This patch implements .bdrv_io_plug, .bdrv_io_unplug and .bdrv_flush_io_queue callbacks for linux-aio Block Drivers, so that submitting I/O as a batch can be supported on linux-aio. [Unprocessed requests are completed with -EIO instead of a bogus ret value. --Stefan] Signed-off-by:
Ming Lei <ming.lei@canonical.com> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Ming Lei authored
This patch introduces three APIs so that following patches can support queuing I/O requests and submitting them as a batch for improving I/O performance. Reviewed-by:
Paolo Bonzini <pbonzini@redhat.com> Signed-off-by:
Ming Lei <ming.lei@canonical.com> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Le Tan authored
In map_page() in hw/ide/ahci.c, replace cpu_physical_memory_map() and cpu_physical_memory_unmap() with dma_memory_map() and dma_memory_unmap(), because ahci devices should not access memory directly but via their address space. Add an AddressSpace parameter to map_page(). In order to call map_page(), we should pass the AHCIState.as as the AddressSpace argument. Signed-off-by:
Le Tan <tamlokveer@gmail.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Markus Armbruster authored
We got a merry mix of -1 and -errno here. Signed-off-by:
Markus Armbruster <armbru@redhat.com> Reviewed-by:
Eric Blake <eblake@redhat.com> Reviewed-by:
Benoit Canet <benoit@irqsave.net> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Benoît Canet authored
This avoid breaking tests on RHEL6 where gnutls is too old for quorum to be built by default. Signed-off-by:
Benoit Canet <benoit@irqsave.net> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Reza Jelveh authored
The data byte count(DBC) read from the description information is defined for bits 21:00. Bits 30:22 are reserved and bit 31 is the Interrupt on Completion (I) flag. Completion interrupts are triggered after every transaction instead of on I-flag in QEMU. tbl_entry_size is a signed integer and improperly reading the DBC leads to a negative offset that causes sglist allocation to fail. Signed-off-by:
Reza Jelveh <reza.jelveh@tuhh.de> Reviewed-by:
Alexander Graf <agraf@suse.de> Reviewed-by:
Kevin Wolf <kwolf@redhat.com> Reviewed-by:
John Snow <jsnow@redhat.com> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Stefan Hajnoczi authored
Make Stefan officially co-maintain hw/ide/ with Kevin. Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com> Acked-by:
Kevin Wolf <kwolf@redhat.com>
-
Kevin Wolf authored
When mirroring an image of a size that is not a multiple of the mirror job granularity, the last request would have the right nb_sectors argument, but a qiov that is rounded up to the next multiple of the granularity. Don't do this. This fixes a segfault that is caused by raw-posix being confused by this and allocating a buffer with request length, but operating on it with qiov length. [s/Driver/Drive/ in qemu-iotests 041 as suggested by Eric --Stefan] Reported-by:
Eric Blake <eblake@redhat.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com> Tested-by:
Eric Blake <eblake@redhat.com> Reviewed-by:
Eric Blake <eblake@redhat.com> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
Chunyan Liu authored
Signed-off-by:
Chunyan Liu <cyliu@suse.com> Signed-off-by:
Stefan Hajnoczi <stefanha@redhat.com>
-
- Jul 06, 2014
-
-
Kirill Batuzov authored
Forward chr_add_watch call from mux chardev to underlying implementation. This should fix bug #1335444 Signed-off-by:
Kirill Batuzov <batuzovk@ispras.ru> Acked-by:
Paolo Bonzini <pbonzini@redhat.com> Acked-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Paolo Bonzini authored
After memory region QOMification QEMU is stricter in detecting wrong usage of the memory region API. Here it detected a memory_region_destroy done before the corresponding memory_region_del_subregion; the memory_region_destroy is done by msix_uninit_exclusive_bar, the memory_region_del_subregion is done by the PCI core's pci_unregister_io_regions before pc->exit is called. The problem was introduced by commit 06a13073 virtio-pci: add device_unplugged callback As noted in that commit log, virtio device kick callbacks need to be stopped before generic virtio is cleaned up. This is because these are notifications from pci proxy to the generic virtio device so they need to be stopped in the unplug call before the virtio device is unrealized. However interrupts are notifications from the virtio device to the pci proxy so they need to stay around while the device is realized. The memory API misuse caused an assertion when hot-unplugging virtio devices. Using the API correctly fixes the assertion. Signed-off-by:
Paolo Bonzini <pbonzini@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Eduardo Habkost authored
This fixes the following crash: $ qemu-system-x86_64 -global container.xxx=y hw/core/qdev-properties-system.c:399:qdev_add_one_global: Object 0x7f7eff234100 is not an instance of type device Aborted (core dumped) New behavior will be to just warn, just like when non-existing clas names are used: $ qemu-system-x86_64 -global container.xxx=y qemu-system-x86_64: Warning: "-global container.xxx=y" not used Signed-off-by:
Eduardo Habkost <ehabkost@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Eduardo Habkost <ehabkost@redhat.com> Tested-by:
Don Slutz <dslutz@verizon.com>
-
Eduardo Habkost authored
It would be much better if we didn't terminate QEMU inside device_post_init(), but at least exiting cleanly is better than aborting and dumping core. Before this patch: $ qemu-system-x86_64 -global cpu.xxx=y qemu-system-x86_64: Property '.xxx' not found Aborted (core dumped) After this patch: $ qemu-system-x86_64 -global cpu.xxx=y qemu-system-x86_64: Property '.xxx' not found Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Reviewed-By:
Igor Mammedov <imammedo@redhat.com> Signed-off-by:
Eduardo Habkost <ehabkost@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Eduardo Habkost <ehabkost@redhat.com>
-
Ming Lei authored
Both 'indirect_desc' and 'event_idx' are bus independent features, and they should be enabled for mmio devices too. On arm64 quad core VM(qemu-kvm), the patch can increase block I/O performance a lot with latest linux tree: - without the patch: 14K IOPS - with the patch: 34K IOPS fio script: [global] direct=1 bsrange=4k-4k timeout=10 numjobs=4 ioengine=libaio iodepth=64 filename=/dev/vdc group_reporting=1 [f1] rw=randread Cc: Peter Maydell <peter.maydell@linaro.org> Signed-off-by:
Ming Lei <ming.lei@canonical.com> Acked-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Igor Mammedov authored
Reported-by:
Sergey Fionov <fionov@gmail.com> Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> Reviewed-by:
Peter Crosthwaite <peter.crosthwaite@xilinx.com>
-
Le Tan authored
In function do_pci_register_device() in file hw/pci/pci.c, move the assignment of pci_dev->devfn to the position before the call to pci_device_iommu_address_space(pci_dev) which will use the value of pci_dev->devfn. Fixes: 9eda7d37 pci: Introduce helper to retrieve a PCI device's DMA address space Cc: qemu-stable@nongnu.org Signed-off-by:
Le Tan <tamlokveer@gmail.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Kirill Batuzov authored
Since commit cdaa86a5 ("Add G_IO_HUP handler for socket chardev") GLib limitation results in a bug on Windows host. Steps to reproduce: Start qemu: qemu-system-i386 -qmp tcp:127.0.0.1:4444:server:nowait Connect with telnet: telnet 127.0.0.1 4444 Try sending some data from telnet. Expected result: answers from QEMU. Observed result: no answers (actually tcp_chr_read is not called at all). Due to GLib limitations it is not possible to create several watches on one channel on Windows hosts. See bug #338943 in GNOME bugzilla for details: https://bugzilla.gnome.org/show_bug.cgi?id=338943 This reimplements commit cdaa86a5 ("Add G_IO_HUP handler for socket chardev") using a single watch: Handle G_IO_HUP in tcp_chr_read instead. It is already watched by a corresponding watch. Remove the second watch with its handler. Cc: Antonios Motakis <a.motakis@virtualopensystems.com> Cc: Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Cc: Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Kirill Batuzov <batuzovk@ispras.ru> Signed-off-by:
Nikita Belov <zodiac@ispras.ru> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Ming Lei authored
The two common virtio features can be defined per bus, so move all into bus class device to make code more clean. As discussed with cornelia, s390-virtio-blk doesn't support the two features at all, so keep s390-virtio as it. Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com> #for s390 ccw Suggested-by:
Paolo Bonzini <pbonzini@redhat.com> Signed-off-by:
Ming Lei <ming.lei@canonical.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> MST: rebase and resolve conflicts
-
Igor Mammedov authored
fixes QEMU abort in case it's started without memory hotplug enabled. as result of fix it will print following messages: " -device pc-dimm,id=d1,memdev=m1: memory hotplug is not enabled, enable it on startup -device pc-dimm,id=d1,memdev=m1: Device 'pc-dimm' could not be initialized " Also fixup assert condition to detect hotplug address space overflow. Signed-off-by:
Igor Mammedov <imammedo@redhat.com> Reported-by:
Hu Tao <hutao@cn.fujitsu.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Hu Tao authored
Specifying the same memory backend twice leads to an assert: ./x86_64-softmmu/qemu-system-x86_64 -m 512M -enable-kvm -object memory-backend-ram,size=256M,id=ram0 -numa node,nodeid=0,memdev=ram0 -numa node,nodeid=1,memdev=ram0 qemu-system-x86_64: /scm/qemu/memory.c:1506: memory_region_add_subregion_common: Assertion `!subregion->container' failed. Aborted (core dumped) Detect and exit with an error message instead. Reviewed-by:
Igor Mammedov <imammedo@redhat.com> Signed-off-by:
Hu Tao <hutao@cn.fujitsu.com> Reviewed-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com>
-
Nikolay Nikolaev authored
Use qtest-obj-y to get the right library order. CONFIG_POSIX ensures mingw compilation won't break. Signed-off-by:
Nikolay Nikolaev <n.nikolaev@virtualopensystems.com> Acked-by:
Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Michael S. Tsirkin <mst@redhat.com> MST: whitespace tweak
-
- Jul 03, 2014
-
-
Eduardo Otubo authored
Signed-off-by:
Eduardo Otubo <eduardo.otubo@profitbricks.com> Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
- Jul 01, 2014
-
-
Peter Maydell authored
Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Gonglei (Arei) authored
The mmsghdr struct is only introduced in Linux 2.6.32; add a configure check for it and disable L2TPV3 on hosts which are too old to provide it, rather than simply failing to compile. Reported-by:
chenliang <chenliang88@huawei.com> Signed-off-by:
Gonglei <arei.gonglei@huawei.com> Reviewed-by:
Stefan Hajnoczi <stefanha@redhat.com> Message-id: 1404219488-11196-1-git-send-email-arei.gonglei@huawei.com [PMM: cleaned up commit message and corrected kernel version number] Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Peter Maydell authored
usb bugfixes. # gpg: Signature made Tue 01 Jul 2014 14:51:19 BST using RSA key ID D3E87138 # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" # gpg: aka "Gerd Hoffmann <gerd@kraxel.org>" # gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>" * remotes/kraxel/tags/pull-usb-20140701-1: ccid-card-emulated: use EventNotifier usb: initialize libusb_device to avoid crash usb: Fix usb-bt-dongle initialization. input: fix jumpy mouse cursor with USB mouse emulation Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Peter Maydell authored
vnc: two bugfixes (by Peter Lieven). # gpg: Signature made Tue 01 Jul 2014 12:32:19 BST using RSA key ID D3E87138 # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" # gpg: aka "Gerd Hoffmann <gerd@kraxel.org>" # gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>" * remotes/kraxel/tags/pull-vnc-20140701-1: ui/vnc: fix potential memory corruption issues ui/vnc: limit client_cut_text msg payload size Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Paolo Bonzini authored
Shut up Coverity's complaint about unchecked fcntl return values, and especially make the code simpler and more efficient. Signed-off-by:
Paolo Bonzini <pbonzini@redhat.com> Signed-off-by:
Gerd Hoffmann <kraxel@redhat.com>
-
Peter Maydell authored
Tracing pull request # gpg: Signature made Tue 01 Jul 2014 09:56:27 BST using RSA key ID 81AB73C8 # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" # gpg: aka "Stefan Hajnoczi <stefanha@gmail.com>" * remotes/stefanha/tags/tracing-pull-request: trace: add qemu_system_powerdown_request and qemu_system_shutdown_request trace events Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-
Peter Maydell authored
Block pull request # gpg: Signature made Tue 01 Jul 2014 09:47:15 BST using RSA key ID 81AB73C8 # gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>" # gpg: aka "Stefan Hajnoczi <stefanha@gmail.com>" * remotes/stefanha/tags/block-pull-request: (23 commits) block: add backing-file option to block-stream block: extend block-commit to accept a string for the backing file block: add helper function to determine if a BDS is in a chain block: add QAPI command to allow live backing file change qapi: Change back sector-count to sectors-count in quorum QAPI events. block/cow: Avoid use of uninitialized cow_bs in error path block: simplify bdrv_find_base() and bdrv_find_overlay() block: make 'top' argument to block-commit optional iotests: Add more tests to quick group iotests: Add qemu tests to quick group iotests: Simplify qemu-iotests-quick.sh qemu-img create: add 'nocow' option virtio-blk: remove need for explicit x-data-plane=on option qdev: drop iothread property type virtio-blk: replace x-iothread with iothread link property virtio-blk: move qdev properties into virtio-blk.c virtio: fix virtio-blk child refcount in transports virtio-blk: drop virtio_blk_set_conf() virtio-blk: use aliases instead of duplicate qdev properties qdev: add qdev_alias_all_properties() ... Signed-off-by:
Peter Maydell <peter.maydell@linaro.org>
-