- 06 4月, 2013 8 次提交
-
-
由 Anthony Liguori 提交于
# By Stefan Hajnoczi (4) and Kevin Wolf (3) # Via Kevin Wolf * kwolf/for-anthony: qcow2: Fix L1 write error handling in qcow2_update_snapshot_refcount qcow2: Return real error in qcow2_update_snapshot_refcount block: clean up I/O throttling wait_time code block: drop duplicated slice extension code block: keep I/O throttling slice time constant block: fix I/O throttling accounting blind spot usb-storage: Forward serial number to scsi-disk
-
由 Kevin Wolf 提交于
It ignored the error code, and at least the 'goto fail' is obvious nonsense as it creates an endless loop (if the next attempt doesn't magically succeed) and leaves the in-memory L1 table in big-endian instead of converting it back. In error cases, there's no point in writing an updated L1 table, so skip this part for them. Signed-off-by: NKevin Wolf <kwolf@redhat.com>
-
由 Kevin Wolf 提交于
This fixes the error message triggered by the following script: cat > /tmp/blkdebug.cfg <<EOF [inject-error] event = "cluster_free" errno = "28" immediately = "off" EOF $qemu_img create -f qcow2 test.qcow2 10G $qemu_img snapshot -c snap test.qcow2 $qemu_img snapshot -d snap blkdebug:/tmp/blkdebug.cfg:test.qcow2 Signed-off-by: NKevin Wolf <kwolf@redhat.com>
-
由 Stefan Hajnoczi 提交于
The wait_time variable is in seconds. Reflect this in a comment and use NANOSECONDS_PER_SECOND instead of BLOCK_IO_SLICE_TIME * 10 (which happens to have the right value). Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com> Tested-By: NBenoit Canet <benoit@irqsave.net> Signed-off-by: NKevin Wolf <kwolf@redhat.com>
-
由 Stefan Hajnoczi 提交于
The current slice is extended when an I/O request exceeds the limit. There is no need to extend the slice every time we check a request. Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com> Tested-By: NBenoit Canet <benoit@irqsave.net> Signed-off-by: NKevin Wolf <kwolf@redhat.com>
-
由 Stefan Hajnoczi 提交于
It is not necessary to adjust the slice time at runtime. We already extend the current slice in order to carry over accounting into the next slice. Changing the actual slice time value introduces oscillations. The guest may experience large changes in throughput or IOPS from one moment to the next when slice times are adjusted. Reported-by: NBenoît Canet <benoit@irqsave.net> Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com> Tested-By: NBenoit Canet <benoit@irqsave.net> Signed-off-by: NKevin Wolf <kwolf@redhat.com>
-
由 Stefan Hajnoczi 提交于
I/O throttling relies on bdrv_acct_done() which is called when a request completes. This leaves a blind spot since we only charge for completed requests, not submitted requests. For example, if there is 1 operation remaining in this time slice the guest could submit 3 operations and they will all be submitted successfully since they don't actually get accounted for until they complete. Originally we probably thought this is okay since the requests will be accounted when the time slice is extended. In practice it causes fluctuations since the guest can exceed its I/O limit and it will be punished for this later on. Account for I/O upon submission so that I/O limits are enforced properly. Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com> Tested-By: NBenoit Canet <benoit@irqsave.net> Signed-off-by: NKevin Wolf <kwolf@redhat.com>
-
由 Kevin Wolf 提交于
usb-storage takes care to fetch the USB serial number from -drive options, but it neglected to pass its own 'serial' property to the scsi-disk it creates. With this patch, the 'serial' qdev property and the 'serial' option in -drive behave the same and correctly apply the serial number on both USB and SCSI level. Signed-off-by: NKevin Wolf <kwolf@redhat.com> Acked-by: NGerd Hoffmann <kraxel@redhat.com>
-
- 05 4月, 2013 19 次提交
-
-
由 Anthony Liguori 提交于
# By Luiz Capitulino # Via Luiz Capitulino * luiz/queue/qmp: chardev: drop the Memory chardev driver hmp: human-monitor-command: stop using the Memory chardev driver Monitor: Make output buffer dynamic qstring: add qstring_get_length()
-
由 Luiz Capitulino 提交于
It's not used anymore since the last commit. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Reviewed-by: NEric Blake <eblake@redhat.com> Acked-by: NGerd Hoffmann <kraxel@redhat.com>
-
由 Luiz Capitulino 提交于
The Memory chardev driver was added because, as the Monitor's output buffer was static, we needed a way to accumulate the output of an HMP commmand when ran by human-monitor-command. However, the Monitor's output buffer is now dynamic, so it's possible for the human-monitor-command to use it instead of the Memory chardev driver. This commit does that change, but there are two important observations about it: 1. We need a way to signal to the Monitor that it shouldn't call chardev functions when flushing its output. This is done by adding a new flag to the Monitor object called skip_flush (which is set to true by qmp_human_monitor_command()) 2. The current code has buffered semantics: QMP clients will only see a command's output if it flushes its output with a new-line character. This commit changes this to unbuffered, which means that QMP clients will see a command's output whenever the command prints anything. I don't think this will matter in practice though, as I believe all HMP commands print the new-line character anyway. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Reviewed-by: NEric Blake <eblake@redhat.com> Acked-by: NGerd Hoffmann <kraxel@redhat.com>
-
由 Luiz Capitulino 提交于
Commit f628926b changed monitor_flush() to retry on qemu_chr_fe_write() errors. However, the Monitor's output buffer can keep growing while the retry is not issued and this can cause the buffer to overflow. To reproduce this issue, just start qemu and type on the Monitor: (qemu) ? This will cause an assertion to trig. To fix this problem this commit makes the Monitor buffer dynamic, which means that it can grow as much as needed. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Reviewed-by: NEric Blake <eblake@redhat.com> Acked-by: NGerd Hoffmann <kraxel@redhat.com>
-
由 Luiz Capitulino 提交于
Long overdue. Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com> Reviewed-by: NEric Blake <eblake@redhat.com> Acked-by: NGerd Hoffmann <kraxel@redhat.com>
-
由 Brad Smith 提交于
Allow the clock_gettime() code using monotonic clock to be utilized on more POSIX compliannt OS's. This started as a fix for OpenBSD which was listed in one function as part of the previous hard coded list of OS's for the functions to support but not in the other. Signed-off-by: NBrad Smith <brad@comstyle.com> Reviewed-by: NPaolo Bonzini <pbonzini@redhat.com> Message-id: 20130405003748.GH884@rox.home.comstyle.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-11-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-10-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
A common dependency of the constant's current users: - hw/apic_common.c - hw/i386/kvmvapic.c - target-i386/cpu.c is "target-i386/cpu.h". Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-9-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-8-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
The new function acpi_table_install() installs any blob the caller passes in. In the next patches this function will be promoted from helper role to extern. Reimplementing the logic should make it easier to understand. It also removes a buffer overflow when has_header && cumulative_file_size < ACPI_TABLE_HDR_SIZE - ACPI_TABLE_PFX_SIZE (In that case the g_realloc() call in the read() loop used to shrink the "acpi_tables" array, causing an out-of-bounds read access when copying the header out of "acpi_tables".) The new code isn't more daring alignment-wise than its predecessor: "acpi_table_header" is packed, and the uint32_t fields are at offsets 6, 26, and 34. Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-7-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
As one consequence, strtok() -- which modifies its argument -- is replaced with g_strsplit(). Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-6-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-5-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
The upcoming changes will need a cleanup section at the end of the function, plus OptsVisitor reports errors via Error. For now keep channeling any Errors to stderr. Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-4-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
The data is binary, not textual. Also, acpi_table_add() abuses the "char *f" pointer -- which normally points to file names to load -- to poke into the table. Introduce "char unsigned *table_start" for that purpose. Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-3-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Laszlo Ersek 提交于
Signed-off-by: NLaszlo Ersek <lersek@redhat.com> Reviewed-by: NAnthony Liguori <aliguori@us.ibm.com> Message-id: 1363821803-3380-2-git-send-email-lersek@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Hans de Goede 提交于
Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> Signed-off-by: NAlberto Garcia <agarcia@igalia.com> Message-id: 1364412581-3672-4-git-send-email-hdegoede@redhat.com Cc: Alberto Garcia <agarcia@igalia.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Hans de Goede 提交于
chardev-frontends need to explictly check, increase and decrement the avail_connections "property" of the chardev when they are not using a qdev-chardev-property for the chardev. This fixes things like: qemu-kvm -chardev stdio,id=foo -device isa-serial,chardev=foo \ -mon chardev=foo Working, where they should fail. Most of the changes here are due to old hardware emulation code which is using serial_hds directly rather then a qdev-chardev-property. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Message-id: 1364412581-3672-3-git-send-email-hdegoede@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Hans de Goede 提交于
Add qemu_chr_fe_claim / _release helper functions for properly dealing with avail_connections. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Message-id: 1364412581-3672-2-git-send-email-hdegoede@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 04 4月, 2013 8 次提交
-
-
由 Peter Crosthwaite 提交于
When the conditions blocking receiving are cleared, check for buffered rx packets. Signed-off-by: NPeter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: NEdgar E. Iglesias <edgar.iglesias@gmail.com>
-
由 Kevin Wolf 提交于
Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Kevin Wolf 提交于
Otherwise make will refuse to build updated .po files. Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Jason Wang 提交于
Cc: Markus Armbruster <armbru@redhat.com> Cc: qemu-stable@nongnu.org Signed-off-by: NJason Wang <jasowang@redhat.com> Message-id: 1361545072-30426-1-git-send-email-jasowang@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Bruce Rogers 提交于
While investigating why a 32 bit Windows 2003 guest wasn't able to successfully perform a shutdown /h, it was discovered that commit afafe4bb inadvertently dropped the initialization of the s4_val used to handle s4 shutdown. Initialize the value as before. Signed-off-by: NBruce Rogers <brogers@suse.com> Message-id: 1364928100-487-1-git-send-email-brogers@suse.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Eduardo Habkost 提交于
commit 5ec01c2e broke "-cpu ..,enforce", as it has moved kvm_check_features_against_host() after the filter_features_for_kvm() call. filter_features_for_kvm() removes all features not supported by the host, so this effectively made kvm_check_features_against_host() impossible to fail. This patch changes the call so we check for host feature support before filtering the feature bits. Signed-off-by: NEduardo Habkost <ehabkost@redhat.com> Message-id: 1364935692-24004-1-git-send-email-ehabkost@redhat.com Cc: Igor Mammedov <imammedo@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Stefan Weil 提交于
Signed-off-by: NStefan Weil <sw@weilnetz.de> Message-id: 1364933691-21197-1-git-send-email-sw@weilnetz.de Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Anthony Liguori 提交于
# By Hanweidong (1) and Stefano Stabellini (1) # Via Stefano Stabellini * sstabellini/xen-2013-04-03: xen-mapcache: pass the right size argument to test_bits xen-mapcache: replace last_address_index with a last_entry pointer
-
- 03 4月, 2013 4 次提交
-
-
由 Hanweidong 提交于
Compute the correct size for test_bits(). qemu_get_ram_ptr() and qemu_safe_ram_ptr() will call xen_map_cache() with size is 0 if the requested address is in the RAM. Then xen_map_cache() will pass the size 0 to test_bits() for checking if the corresponding pfn was mapped in cache. But test_bits() will always return 1 when size is 0 without any bit testing. Actually, for this case, test_bits should check one bit. So this patch introduced a __test_bit_size which is greater than 0 and a multiple of XC_PAGE_SIZE, then test_bits can work correctly with __test_bit_size >> XC_PAGE_SHIFT as its size. Signed-off-by: NZhenguo Wang <wangzhenguo@huawei.com> Signed-off-by: NWeidong Han <hanweidong@huawei.com> Signed-off-by: NStefano Stabellini <stefano.stabellini@eu.citrix.com>
-
由 Stefano Stabellini 提交于
Replace last_address_index and last_address_vaddr with a single pointer to the last MapCacheEntry used. Signed-off-by: NStefano Stabellini <stefano.stabellini@eu.citrix.com>
-
由 Anthony Liguori 提交于
# By Stefan Hajnoczi # Via Luiz Capitulino * luiz/queue/qmp: chardev: clear O_NONBLOCK on SCM_RIGHTS file descriptors qemu-socket: set passed fd non-blocking in socket_connect() net: ensure "socket" backend uses non-blocking fds oslib-posix: rename socket_set_nonblock() to qemu_set_nonblock()
-
由 Paolo Bonzini 提交于
These variables have not been set for a long time. Do not include them in config-host.mak. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com> Message-id: 1364918276-11866-1-git-send-email-pbonzini@redhat.com Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
- 02 4月, 2013 1 次提交
-
-
由 Stefan Hajnoczi 提交于
When we receive a file descriptor over a UNIX domain socket the O_NONBLOCK flag is preserved. Clear the O_NONBLOCK flag and rely on QEMU file descriptor users like migration, SPICE, VNC, block layer, and others to set non-blocking only when necessary. This change ensures we don't accidentally expose O_NONBLOCK in the QMP API. QMP clients should not need to get the non-blocking state "correct". A recent real-world example was when libvirt passed a non-blocking TCP socket for migration where we expected a blocking socket. The source QEMU produced a corrupted migration stream since its code did not cope with non-blocking sockets. Signed-off-by: NStefan Hajnoczi <stefanha@redhat.com> Reviewed-by: NEric Blake <eblake@redhat.com> Signed-off-by: NLuiz Capitulino <lcapitulino@redhat.com>
-