aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-10-25pseries: Update SLOF firmware imageAlexey Kardashevskiy
This has reworked USB OHCI and adds support of USB EHCI, VIRTIO-SCSI and various fixes (IBM VSCSI, VGA and more). The full list of fixes is: * usb-ohci: Convert td-phys every time to td-virt * usb-storage: Fix cbwflags field * Add -fno-strict-aliasing in global CFLAGS * usb: fix various issues found with js2x * Move hex64-{decode,encode}-unit to node.fs * usb: Use separate in-memory endian swap * usb-ohci: collect TDs from done list * js2x: more fixes * js2x: Fix build of takeover image * js2x: use new usb stack * usb-ohci: Use proper memory barriers always * usb: Fix a couple of warnings * Fix $cat-instance-unit * Cache phandle of /chosen * Use root.fs on qemu as well * usb-ehci: Add ehci handshake * usb: add mb for write accessors * usb-ohci: add missing memory barriers * usb-ohci: suspend the controller in exit code path * usb-ohci: Add a reset when closing the OHCI * usb: Use proper accessors for MMIO and separate in-memory endian swap * Use a global definition of sync() and mb() * net-snk: Remove exception handling * usb: unmap buffers * slof: call quiesce on closing of stdin * usb-kbd: accept "s" to drop to OF prompt * USB storage driver * usb-ohci: add Bulk transfer support * usb-ehci: Add bulk support * usb-core: add usb bulk support * USB generic hub device driver * usb-ehci: setup new device * usb-ehci: Check ehci ports * usb-ehci: initialize controller * USB keyboard driver * usb-core: setup new device * usb-core: create dev pool allocation * usb-ohci: implement ohci send control * usb-core: usb send control * usb-core: implement usb_{get,put}_pipe routines * usb-ohci: allocate pipe pool * usb-ohci: reset, init and check-ports * Add standard header stdbool.h * usb-slof: forth support routines for C * usb-ehci: Add USB EHCI skeleton * usb-core: Add register accessor functions * Use __builtin_bswap routines for endianness swapping * usb-core: hcd registration and query routines * usb-core: adding generic dev-hci.fs * usb-core: registration and makefiles * Add new USB code * Remove old usb code * vga: fix hcall-invert-screen and hcall-blink-screen * Enumerate disk/cdrom aliases for multiple disks or cdroms * scsi: unify scsi probing code * vscsi: generalizing probe code * virtio-scsi: iterate through targets * scsi: unify and use make-disk-alias * nvram: remove unnecessary prints * Add hack to client interface finddevice of "/memory" * scsi: Fix cdrom boot crash when no medium present * Look for /memory@0, not just /memory * Fix instance>qname crashing when displaying instance arguments * Fix js2x build * scsi-disk: Bound check read-blocks * Fix off by one error in scsi-disk get-capacity * scsi: fix report-luns handling * SLOF: virtio-scsi block driver code * scsi: Move bits of vio-vscsi.fs to a common helpers file * scsi: Move scsi-disk.fs to a generic place * SLOF: virtio-scsi helper routines * SLOF: virtio-scsi - add pci device file * iso9660: Don't constantly reallocate the read buffer * vscsi: Sanitize interface between scsi-disk.fs and vio-vscsi.fs * vio-vscsi: Rework vio-vscsi support * virtio: Add a virtio-set-qaddr helper * disk-label: Allocate 4096 bytes for 4k block devices * disk-label: Increase the max size of the PReP boot partition * Make load-base a real environment variable * vio-vscsi: Switch to using a wildcard "disk" node and make scsi-disk generic * Fix disk-label package to use proper instance path * Increase size of catpad * Fix instance>path to contain unit address for wildcard nodes * Fix handling of wildcard nodes in open-dev * vio-vscsi: Get CRQ on open and release on close Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: Alexander Graf <agraf@suse.de>
2013-10-18Merge remote-tracking branch 'qemu-kvm/uq/master' into stagingAnthony Liguori
# By Paolo Bonzini (2) and Jan Kiszka (1) # Via Gleb Natapov * qemu-kvm/uq/master: kvmvapic: Prevent reading beyond the end of guest RAM x86: cpuid: reconstruct leaf 0Dh data x86: fix migration from pre-version 12 Message-id: 1382108641-4862-1-git-send-email-pbonzini@redhat.com Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-18Merge remote-tracking branch 'stefanha/net' into stagingAnthony Liguori
# By Amos Kong # Via Stefan Hajnoczi * stefanha/net: net/rtl8139: update network information when macaddr is changed in guest net/e1000: update network information when macaddr is changed in guest net: update nic info during device reset Message-id: 1382103314-21608-1-git-send-email-stefanha@redhat.com Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-18Merge remote-tracking branch 'stefanha/block' into stagingAnthony Liguori
# By Fam Zheng (3) and others # Via Stefan Hajnoczi * stefanha/block: vmdk: fix VMFS extent parsing vmdk: Only read cid from image file when opening virtio: Remove unneeded memcpy block/raw-win32: Always use -errno in hdev_open blockdev: fix cdrom read_only flag sd: Avoid access to NULL BlockDriverState hmp: drop bogus "[not inserted]" Message-id: 1382105915-27735-1-git-send-email-stefanha@redhat.com Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-18Merge remote-tracking branch 'bonzini/iommu-for-anthony' into stagingAnthony Liguori
# By Paolo Bonzini (10) and others # Via Paolo Bonzini * bonzini/iommu-for-anthony: exec: remove qemu_safe_ram_ptr icount: make it thread-safe icount: document (future) locking rules for icount icount: prepare the code for future races in calling qemu_clock_warp icount: reorganize icount_warp_rt icount: use cpu_get_icount() directly timer: add timer_mod_anticipate and timer_mod_anticipate_ns timer: extract timer_mod_ns_locked and timerlist_rearm timer: make qemu_clock_enable sync between disable and timer's cb qemu-thread: add QemuEvent timer: protect timers_state's clock with seqlock seqlock: introduce read-write seqlock vga: Mark relevant portio lists regions as coalesced MMIO flushing cirrus: Mark vga io region as coalesced MMIO flushing portio: Allow to mark portio lists as coalesced MMIO flushing compatfd: switch to QemuThread memory: fix 128 arithmetic in info mtree Message-id: 1382024935-28297-1-git-send-email-pbonzini@redhat.com Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-18Merge remote-tracking branch 'bonzini/configure' into stagingAnthony Liguori
# By Peter Maydell (3) and Ákos Kovács (2) # Via Paolo Bonzini * bonzini/configure: ui/Makefile.objs: delete unnecessary cocoa.o dependency default-configs/: CONFIG_GDBSTUB_XML removed Makefile.target: CONFIG_NO_* variables removed rules.mak: New string testing functions rules.mak: New logical functions for handling y/n values
2013-10-18Merge remote-tracking branch 'spice/spice.v75' into stagingAnthony Liguori
# By Gerd Hoffmann (2) and others # Via Gerd Hoffmann * spice/spice.v75: spice: fix multihead support spice-display: add display channel id to the debug messages. Fix VNC SASL authentication when using a QXL device spice: replace use of deprecated API Message-id: 1382006760-19388-1-git-send-email-kraxel@redhat.com Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-18Merge remote-tracking branch 'filippov/tags/20131015-xtensa' into stagingAnthony Liguori
xtensa queue 2013-10-15 # gpg: Signature made Tue 15 Oct 2013 06:27:41 AM PDT using RSA key ID F83FA044 # gpg: Can't check signature: public key not found # By Max Filippov # Via Max Filippov * filippov/tags/20131015-xtensa: target-xtensa: add in_asm logging Message-id: 1381844297-1728-1-git-send-email-jcmvbkbc@gmail.com Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-18vmdk: fix VMFS extent parsingFam Zheng
The VMFS extent line in description file doesn't have start offset as FLAT lines does, and it should be defaulted to 0. The flat_offset variable is initialized to -1, so we need to set it in this case. Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-18vmdk: Only read cid from image file when openingFam Zheng
Previously cid of parent is parsed from image file for every IO request. We already have L1/L2 cache and don't have assumption that parent image can be updated behind us, so remove this to get more efficiency. The parent CID is checked only for once after opening. Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-18net/rtl8139: update network information when macaddr is changed in guestAmos Kong
rtl8139 has same problem as e1000, nic info isn't updated when macaddr is changed in guest. This patch updates the nic info when the last bit of macaddr is written. Signed-off-by: Amos Kong <akong@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-18net/e1000: update network information when macaddr is changed in guestAmos Kong
If we change macaddr in guest by 'ifconfig eth0 hw ether 12:12:12:34:35:36', the mac register of e1000 is already updated, but we don't update network information in qemu. Therefor, the information in monitor is wrong. This patch updates nic info when the second part of macaddr is written. Signed-off-by: Amos Kong <akong@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-18net: update nic info during device resetAmos Kong
macaddr is reset during device reset, but nic info isn't updated, this problem exists in e1000 & rtl8139 Signed-off-by: Amos Kong <akong@redhat.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-18virtio: Remove unneeded memcpyStefan Weil
Report from valgrind: ==19521== Source and destination overlap in memcpy(0x31d38938, 0x31d38938, 64) ==19521== at 0x4A0A343: memcpy@@GLIBC_2.14 (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==19521== by 0x42774E: virtio_blk_device_init (virtio-blk.c:686) ==19521== by 0x46EE9E: virtio_device_init (virtio.c:1158) ==19521== by 0x25405E: device_realize (qdev.c:178) ==19521== by 0x2559B5: device_set_realized (qdev.c:699) ==19521== by 0x3A819B: property_set_bool (object.c:1315) ==19521== by 0x3A6CE0: object_property_set (object.c:803) Valgrind is right: blk == &s->blks, so it is a memcpy of 64 byte with source == destination which can be removed. Reported-by: Dave Airlie <airlied@gmail.com> Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-17exec: remove qemu_safe_ram_ptrPaolo Bonzini
This is not needed since the RAM list is not modified anymore by qemu_get_ram_ptr. Replace it with qemu_get_ram_block. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17icount: make it thread-safePaolo Bonzini
This lets threads other than the I/O thread use vm_clock even in -icount mode. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17icount: document (future) locking rules for icountPaolo Bonzini
Reviewed-by: Alex Bligh <alex@alex.org.uk> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17icount: prepare the code for future races in calling qemu_clock_warpPaolo Bonzini
Computing the deadline of all vm_clocks is somewhat expensive and calls out to qemu-timer.c; two reasons not to do it in the seqlock's write-side critical section. This however opens the door for races in setting and reading vm_clock_warp_start. To plug them, we need to cover the case where a new deadline slips in between the call to qemu_clock_deadline_ns_all and the actual modification of the icount_warp_timer. Restrict changes to vm_clock_warp_start and the icount_warp_timer's expiration time, to only move them back (which would simply cause an early wakeup). If a vm_clock timer is cancelled while CPUs are idle, this might cause the icount_warp_timer to fire unnecessarily. This is not a problem, after it fires the timer becomes inactive and the next call to timer_mod_anticipate will be precise. In addition to this, we must deactivate the icount_warp_timer _before_ checking whether CPUs are idle. This way, if the "last" CPU becomes idle during the call to timer_del we will still set up the icount_warp_timer. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17icount: reorganize icount_warp_rtPaolo Bonzini
To prepare for future code changes, move the increment of qemu_icount_bias outside the "if" statement. Also, hoist outside the if the check for timers that expired due to the "warping". The check is redundant when !runstate_is_running(), but doing it this way helps because the code that increments qemu_icount_bias will be a critical section. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17icount: use cpu_get_icount() directlyPaolo Bonzini
This will help later when we will have to place these calls in a critical section, and thus call a version of cpu_get_icount() that does not take the lock. Reviewed-by: Alex Bligh <alex@alex.org.uk> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17timer: add timer_mod_anticipate and timer_mod_anticipate_nsPaolo Bonzini
These let a user anticipate the deadline of a timer, atomically with other sites that call the function. This helps avoiding complicated lock hierarchies. Reviewed-by: Alex Bligh <alex@alex.org.uk> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17timer: extract timer_mod_ns_locked and timerlist_rearmPaolo Bonzini
These will be reused in timer_mod_anticipate functions. Reviewed-by: Alex Bligh <alex@alex.org.uk> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17timer: make qemu_clock_enable sync between disable and timer's cbLiu Ping Fan
After disabling the QemuClock, we should make sure that no QemuTimers are still in flight. To implement that with light overhead, we resort to QemuEvent. The caller of disabling will wait on QemuEvent of each timerlist. Note, qemu_clock_enable(foo,false) can _not_ be called from timer's cb. Also, the callers of qemu_clock_enable() should be protected by the BQL. Signed-off-by: Liu Ping Fan <pingfank@linux.vnet.ibm.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17qemu-thread: add QemuEventPaolo Bonzini
This emulates Win32 manual-reset events using futexes or conditional variables. Typical ways to use them are with multi-producer, single-consumer data structures, to test for a complex condition whose elements come from different threads: for (;;) { qemu_event_reset(ev); ... test complex condition ... if (condition is true) { break; } qemu_event_wait(ev); } Or more efficiently (but with some duplication): ... evaluate condition ... while (!condition) { qemu_event_reset(ev); ... evaluate condition ... if (!condition) { qemu_event_wait(ev); ... evaluate condition ... } } QemuEvent provides a very fast userspace path in the common case when no other thread is waiting, or the event is not changing state. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17timer: protect timers_state's clock with seqlockLiu Ping Fan
QEMU_CLOCK_VIRTUAL may be read outside BQL. This will make its foundation, i.e. cpu_clock_offset exposed to race condition. Using private lock to protect it. After this patch, reading QEMU_CLOCK_VIRTUAL is thread safe unless use_icount is true, in which case the existing callers still rely on the BQL. Lock rule: private lock innermost, ie BQL->"this lock" Signed-off-by: Liu Ping Fan <pingfank@linux.vnet.ibm.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17seqlock: introduce read-write seqlockPaolo Bonzini
Seqlock implementation for QEMU. Usage idiom reader: do { start = seqlock_read_begin(&sl); ... } while (seqlock_read_retry(&sl, start)); writer: seqlock_write_lock(&sl); ... seqlock_write_unlock(&sl); initialization: seqlock_init(QemuSeqLock *sl, QemuMutex *mutex) mutex could be NULL if the caller will provide its own protection for concurrent write sides (typically using the BQL). Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17vga: Mark relevant portio lists regions as coalesced MMIO flushingJan Kiszka
This allows to remove the explicit qemu_flush_coalesced_mmio_buffer calls. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17cirrus: Mark vga io region as coalesced MMIO flushingJan Kiszka
This allows to remove the explicit qemu_flush_coalesced_mmio_buffer calls - the memory core will invoke them now. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17portio: Allow to mark portio lists as coalesced MMIO flushingJan Kiszka
This will enable us to remove all remaining explicit calls of qemu_flush_coalesced_mmio_buffer in IO handlers. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17compatfd: switch to QemuThreadJan Kiszka
qemu_thread_create already does signal blocking and detaching for us. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17memory: fix 128 arithmetic in info mtreeAlexey Kardashevskiy
mtree_print_mr() calls int128_get64() in 3 places but only 2 places handle 2^64 correctly. This fixes the third call of int128_get64(). Cc: qemu-stable@nongnu.org Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-17block/raw-win32: Always use -errno in hdev_openMax Reitz
On one occasion, hdev_open() returned -1 in case of an unknown error instead of a proper -errno value. Adjust this to match the behavior of raw_open() (in raw-win32), which is to return -EINVAL in this case. Also, change the call to error_setg*() to match the one in raw_open() as well. Signed-off-by: Max Reitz <mreitz@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-17spice: fix multihead supportGerd Hoffmann
This patch fixes spice display initialization to handle multihead properly. spice-core now keeps track of which QemuConsole has a spice display channel attached to it and which has not. It also manages display channel ids. spice-display looks at all QemuConsoles and will pick up any graphic console not yet bound to a spice channel (which in practice are all non-qxl graphic devices). Result is that (a) you'll get a spice client window for each graphical device now (first only without this patch), and (b) mixing qxl and non-qxl vga cards works properly. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2013-10-17spice-display: add display channel id to the debug messages.Gerd Hoffmann
And s/__FUNCTION__/__func__/ while being at it. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2013-10-17Fix VNC SASL authentication when using a QXL deviceChristophe Fergeau
ui/vnc.c:vnc_display_open() and spice-server/server/reds.c:do_spice_init() are both calling sasl_server_init(). If spice_server_set_sasl_appname() hasn't been called, spice-server will call it with "spice" as an appname, causing cyrus-sasl to try to use a /etc/sasl2/spice.conf config file rather than the /etc/sasl2/qemu.conf file that QEMU uses. When using -spice sasl on the command line, QEMU properly calls spice_server_set_sasl_appname() to set the SASL appname as "qemu", but when using a QXL device without using SPICE, spice_server_init() is called from qemu_spice_add_interface() without setting the appname to "qemu", which then causes the VNC code to try to use spice.conf instead of qemu.conf. Signed-off-by: Christophe Fergeau <cfergeau@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2013-10-17spice: replace use of deprecated APIMarc-André Lureau
hose API are deprecated since 0.11, and qemu depends on 0.12 already. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2013-10-17blockdev: fix cdrom read_only flagFam Zheng
Since 0ebd24e0, cdrom doesn't have read-only on by default, which will error out when using an read only image. Fix it by setting the default value when parsing opts. Reported-by: Edivaldo de Araujo Pereira <edivaldoapereira@yahoo.com.br> Signed-off-by: Fam Zheng <famz@redhat.com> Reviewed-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-17sd: Avoid access to NULL BlockDriverStateAndreas Färber
Commit 4f8a066b5fc254eeaabbbde56ba4f5b29cc68fdf (blockdev: Remove IF_* check for read-only blockdev_init) added a usage of bdrv_is_read_only() to sd_init(), which is called for versatilepb, versatileab and xilinx-zynq-a9 machines among others with NULL argument by default, causing the new qom-test to fail. Add a check to prevent this. Suggested-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-17hmp: drop bogus "[not inserted]"Mike Qiu
Commit 3e9fab690d59ac15956c3733fe0794ce1ae4c4af ("block: Add support for throttling burst max in QMP and the command line.") introduced bogus "[not inserted]" output, possibly due to a merge failure. Remove this artifact. Output of 'info block' scsi0-hd0: /images/f18-ppc64.qcow2 (qcow2) [not inserted] scsi0-cd2: [not inserted] Removable device: not locked, tray closed floppy0: [not inserted] Removable device: not locked, tray closed sd0: [not inserted] Removable device: not locked, tray closed There will be no additional lines between scsi0-hd0 and scsi0-cd2. At the same time, scsi0-hd0 already inserted, but still has '[not inserted]' flag. This line should be removed. This patch is to solve this. Signed-off-by: Mike Qiu <qiudayu@linux.vnet.ibm.com> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2013-10-16ui/Makefile.objs: delete unnecessary cocoa.o dependencyPeter Maydell
Delete an unnecessary dependency for cocoa.o; we already have a general rule that tells Make that we can build a .o file from a .m source using an ObjC compiler, so this specific rule is unnecessary. Further, it is using the dubious construct "$(SRC_PATH)/$(obj)" to get at the source directory, which will break when $(obj) is redefined as part of the preparation for per-object library support. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Fam Zheng <famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-16default-configs/: CONFIG_GDBSTUB_XML removedÁkos Kovács
Makefile.target: Build gdbstub-xml.o only when TARGET_XML_FILES is not empty. Signed-off-by: Ákos Kovács <akoskovacs@gmx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-16Makefile.target: CONFIG_NO_* variables removedÁkos Kovács
CONFIG_NO_* variables replaced with the lnot logical function Signed-off-by: Ákos Kovács <akoskovacs@gmx.com> [PMM: fixed a few CONFIG_NO_* uses that were missed] Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-16rules.mak: New string testing functionsPeter Maydell
Add new string testing functions which return a y/n result: eq : are two strings equal (ignoring leading/trailing space)? ne : are two strings unequal? isempty : is a string empty? notempty : is a string non-empty? Based on an idea by Ákos Kovács <akoskovacs@gmx.com>. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-16rules.mak: New logical functions for handling y/n valuesPeter Maydell
Add new logical functions for handling y/n values like those we use in CONFIG_FOO variables: lnot : logical NOT land : logical AND lor : logical OR lxor : logical XOR leqv : logical equality, inverse of lxor lif : like Make's $(if) but with an eq-like test Based on an idea by Ákos Kovács <akoskovacs@gmx.com>. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2013-10-15target-xtensa: add in_asm loggingMax Filippov
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
2013-10-14Merge remote-tracking branch 'rth/tcg-ldst-6' into stagingAnthony Liguori
# By Richard Henderson # Via Richard Henderson * rth/tcg-ldst-6: target-alpha: Convert to new ldst opcodes tcg-ppc64: Support new ldst opcodes tcg-ppc: Support new ldst opcodes tcg-ppc64: Convert to le/be ldst helpers tcg-ppc: Convert to le/be ldst helpers tcg-ppc64: Use TCGMemOp within qemu_ldst routines tcg-ppc: Use TCGMemOp within qemu_ldst routines tcg-arm: Improve GUEST_BASE qemu_ld/st tcg-arm: Convert to new ldst opcodes tcg-arm: Tidy variable naming convention in qemu_ld/st tcg-arm: Convert to le/be ldst helpers tcg-arm: Use TCGMemOp within qemu_ldst routines tcg-i386: Support new ldst opcodes tcg-i386: Remove "cb" output restriction from qemu_st8 for i386 tcg-i386: Tidy softmmu routines tcg-i386: Use TCGMemOp within qemu_ldst routines tcg: Use TCGMemOp for TCGLabelQemuLdst.opc Message-id: 1381620683-4568-1-git-send-email-rth@twiddle.net Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-14Merge remote-tracking branch 'jliu/or32' into stagingAnthony Liguori
# By Sebastian Macke # Via Jia Liu * jliu/or32: target-openrisc: Removes a non-conforming behavior for the first page of the memory target-openrisc: Correct handling of page faults. Message-id: 1380789702-18935-1-git-send-email-proljc@gmail.com Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-14Merge remote-tracking branch 'awilliam/tags/vfio-pci-for-qemu-20131010.0' ↵Anthony Liguori
into staging vfio-pci updates include: - Forgotten MSI affinity patch posted several months ago - Lazy option ROM loading to delay load until after device/bus resets - Error reporting cleanups - PCI hot reset support introduced with Linux v3.12 development kernels - Debug build fix for int128 The lazy ROM loading and hot reset should help VGA assignment as we can now do a bus reset when there are multiple devices on the bus, ex. multi-function graphics and audio cards. # gpg: Signature made Thu 10 Oct 2013 11:26:39 AM PDT using RSA key ID 3BB08B22 # gpg: Can't check signature: public key not found # By Alex Williamson (7) and Alexey Kardashevskiy (1) # Via Alex Williamson * awilliam/tags/vfio-pci-for-qemu-20131010.0: vfio-pci: Fix endian issues in vfio_pci_size_rom() vfio-pci: Add dummy PCI ROM write accessor vfio: Fix debug output for int128 values vfio-pci: Implement PCI hot reset vfio-pci: Cleanup error_reports vfio-pci: Lazy PCI option ROM loading vfio-pci: Test device reset capabilities vfio-pci: Add support for MSI affinity Message-id: 20131010184122.31667.28382.stgit@bling.home Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-14exec: Fix prototype of phys_mem_set_alloc and related functionsStefan Weil
phys_mem_alloc and its assigned values qemu_anon_ram_alloc and legacy_s390_alloc must have identical argument lists. legacy_s390_alloc uses the size parameter to call mmap, so size_t is good enough for all of them. This patch fixes compiler errors on i686 Linux hosts: CC alpha-softmmu/exec.o exec.c:752:51: error: initialization from incompatible pointer type [-Werror] exec.c: In function 'qemu_ram_alloc_from_ptr': exec.c:1139:32: error: comparison of distinct pointer types lacks a cast [-Werror] exec.c: In function 'qemu_ram_remap': exec.c:1283:21: error: comparison of distinct pointer types lacks a cast [-Werror] Signed-off-by: Stefan Weil <sw@weilnetz.de> Reviewed-by: Markus Armbruster <armbru@redhat.com> Message-id: 1380481005-32399-1-git-send-email-sw@weilnetz.de Signed-off-by: Anthony Liguori <aliguori@amazon.com>
2013-10-12target-alpha: Convert to new ldst opcodesRichard Henderson
Or, partially. The fundamental primitives for the port are gen_load_mem and gen_store_mem, which take a callback to emit the memory operation. For that, we continue to use the original inline functions that forward to the new ops, rather than replicate the same thing privately. That said, all free-standing calls to tcg_gen_qemu_* have been converted. The 32-bit floating-point references now use _i32 opcodes, eliminating a truncate or extension. Signed-off-by: Richard Henderson <rth@twiddle.net>