aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-12-06target-mips: Fix incorrect shift for SHILO and SHILOVPetar Jovanovic
helper_shilo has not been shifting an accumulator value correctly for negative values in 'shift' field. Minor optimization for shift=0 case. This change also adds tests that will trigger issue and check for regressions. Signed-off-by: Petar Jovanovic <petarj@mips.com> Reviewed-by: Richard Henderson <rth@twiddle.net> Reviewed-by: Eric Johnson <ericj@mips.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2012-12-06target-mips: Fix incorrect code and test for INSVPetar Jovanovic
Content of register rs should be shifted for pos before applying a mask. This change contains both fix for the instruction and to the existing test. Signed-off-by: Petar Jovanovic <petarj@mips.com> Reviewed-by: Eric Johnson <ericj@mips.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2012-12-05xilinx_uartlite: Accept input after rx FIFO popPeter Crosthwaite
The device return false from the can receive function when the FIFO is full. This mean the device should check for buffered input whenever a byte is popped from the FIFO. Reported-by: Jason Wu <huanyu@xilinx.com> Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
2012-12-05xilinx_uartlite: suppress "cannot receive message"Peter Crosthwaite
This message is not an error condition, its just informing the user that the device is corking the uart traffic to not drop characters. Reported-by: Jason Wu <huanyu@xilinx.com> Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
2012-12-05xilinx_axienet: Implement R_IS behaviourPeter Crosthwaite
The interrupt status register R_IS is the standard clear-on-write behaviour. This was unimplemented and defaulting to updating the register to the written value. Implemented clear-on-write. Reported-by: Jason Wu <huanyu@xilinx.com> Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
2012-12-03Open up 1.4 development branchAnthony Liguori
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-12-03Update version for 1.3.0 releasev1.3.0Anthony Liguori
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-12-03e1000: Discard packets that are too long if !SBP and !LPEMichael Contreras
The e1000_receive function for the e1000 needs to discard packets longer than 1522 bytes if the SBP and LPE flags are disabled. The linux driver assumes this behavior and allocates memory based on this assumption. Signed-off-by: Michael Contreras <michael@inetric.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30Update version for 1.3.0-rc2v1.3.0-rc2Anthony Liguori
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30Merge remote-tracking branch 'kraxel/seabios-b1c35f2' into stagingAnthony Liguori
* kraxel/seabios-b1c35f2: seabios: update binaries in pc-bios/ roms: also copy the dsdt when updating seabios. seabios: update to b1c35f2b28cc0c94ebed8176ff61ac0e0b377798 Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30Merge remote-tracking branch 'kwolf/for-anthony' into stagingAnthony Liguori
* kwolf/for-anthony: coroutine-sigaltstack.c: Use stack_t, not struct sigaltstack stream: fix ratelimit_set_speed atapi: make change media detection for guests easier Documentation: Update image format information Documentation: Update block cache mode information Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30Merge remote-tracking branch 'spice/spice.v65' into stagingAnthony Liguori
* spice/spice.v65: qxl: reload memslots after migration, when qxl is in UNDEFINED mode Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30Merge remote-tracking branch 'kraxel/usb.73' into stagingAnthony Liguori
* kraxel/usb.73: ehci-sysbus: Attach DMA context. usb: fail usbdevice_create() when there is no USB bus usb: tag usb host adapters as not hotpluggable. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30Merge remote-tracking branch 'qmp/queue/qmp' into stagingAnthony Liguori
* qmp/queue/qmp: qapi: fix qapi_dealloc_type_size parameter type Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30seabios: update binaries in pc-bios/Gerd Hoffmann
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-30roms: also copy the dsdt when updating seabios.Gerd Hoffmann
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-30Revert "audio/wavcapture: Clarify licensing"Anthony Liguori
This reverts commit 456a84d156a7c42f18b1da176dd6219e2dffd043. This patch wasn't submitted to the list and did not get Acked by other copyright holders in the file. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30Revert "audio/audio_pt_int: Clarify licensing"Anthony Liguori
This reverts commit 72bc6f1bf710e205f175af9b1fc8bbd83e8da71f. This patch wasn't submitted to the list and did not get Acked by other copyright holders in the file. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30seabios: update to b1c35f2b28cc0c94ebed8176ff61ac0e0b377798Gerd Hoffmann
This patch updates the seabios submodule to commit b1c35f2b28cc0c94ebed8176ff61ac0e0b377798. Most important change is that seabios sets the busmaster bit in the pci config space for the lsi and esp scsi host adapters. Since commit 1c380f9460522f32c8dd2577b2a53d518ec91c6d qemu is strict here and disallows any dma access when the bit is clear. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-30multiboot: fix e801 memory mapPaolo Bonzini
The e801 memory sizes in the multiboot structures hard-code the available low memory to 640. However, the value should not include the size of the EBDA. Fill the value in the option ROM, getting the size of low memory from the BIOS. Cc: Alexander Graf <agraf@suse.de> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30seccomp: adding new syscalls (bugzilla 855162)Eduardo Otubo
According to the bug 855162[0] - there's the need of adding new syscalls to the whitelist when using Qemu with Libvirt. [0] - https://bugzilla.redhat.com/show_bug.cgi?id=855162 Reported-by: Paul Moore <pmoore@redhat.com> Tested-by: Paul Moore <pmoore@redhat.com> Signed-off-by: Eduardo Otubo <otubo@linux.vnet.ibm.com> Signed-off-by: Corey Bryant <coreyb@linux.vnet.ibm.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-30coroutine-sigaltstack.c: Use stack_t, not struct sigaltstackPeter Maydell
Use the POSIX-specified stack_t type as the argument to sigaltstack() rather than the legacy struct sigaltstack. This allows us to compile on MacOSX with --with-coroutine=sigaltstack. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2012-11-30stream: fix ratelimit_set_speedDietmar Maurer
The formula to compute slice_quota was wrong since commit 6ef228fc. Signed-off-by: Dietmar Maurer <dietmar@proxmox.com> Reviewed-by: Eric Blake <eblake@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2012-11-30atapi: make change media detection for guests easierPavel Hrdina
If you have a guest with a media in the optical drive and you change it, the windows guest cannot properly recognize this media change. Windows needs to detect sense "NOT_READY with ASC_MEDIUM_NOT_PRESENT" before we send sense "UNIT_ATTENTION with ASC_MEDIUM_MAY_HAVE_CHANGED". Signed-off-by: Pavel Hrdina <phrdina@redhat.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2012-11-30Documentation: Update image format informationKevin Wolf
Document new and yet undocumented options and image formats. The qemu-img man page contains information only for raw and qcow2 now and references the HTML documentation for a more detailed description of other formats. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
2012-11-30Documentation: Update block cache mode informationKevin Wolf
Somehow we forgot to update this when cache=writeback became the default. While changing the information on the default, also make the description of all caches modes a bit more accurate. Signed-off-by: Kevin Wolf <kwolf@redhat.com> Acked-by: Stefan Hajnoczi <stefanha@redhat.com>
2012-11-29virtio: limit avail bytes lookaheadMichael S. Tsirkin
Commit 0d8d7690850eb0cf2b2b60933cf47669a6b6f18f introduced a regression in virtio-net performance because it looks into the ring aggressively while we really only care about a single packet worth of buffers. Reported as bugzilla 1066055 in launchpad. To fix, add parameters limiting lookahead, and use in virtqueue_avail_bytes. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reported-by: Edivaldo de Araujo Pereira <edivaldoapereira@yahoo.com.br> Tested-by: Edivaldo de Araujo Pereira <edivaldoapereira@yahoo.com.br> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-29qemu-tech.texi: update implemented xtensa features listMax Filippov
Debug option is available since QEMU-1.2; FP coprocessor and coprocessor context is available since QEMU-1.3. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-29qdev: relax bus type check in qdev_device_add() (v2)Anthony Liguori
We are currently checking for an exact type match. Use QOM dynamic_cast to check for a compatible type instead. Cc: Konrad Frederic <fred.konrad@greensocs.com> Cc: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> --- v1 -> v2: - also add cast to qbus_find_recursive (Peter) - simplify by doing object_dynamic_cast instead of messing with classes
2012-11-29qapi: fix qapi_dealloc_type_size parameter typeBruce Rogers
The second parameter to qapi_dealloc_type_size should be a uint64_t *, not a size_t *. This was causing our 32 bit x86 build to fail, since warnings are treated as errors. Signed-off-by: Bruce Rogers <brogers@suse.com> Reviewed-by: Michael Roth <mdroth@linux.vnet.ibm.com> Reviewed-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
2012-11-29ehci-sysbus: Attach DMA context.Peter Crosthwaite
This was left as NULL on the initial merge due to debate on the mailing list on how to handle DMA contexts for sysbus devices. Patch 9e11908f12f92e31ea94dc2a4c962c836cba9f2a was later merged to fix OHCI. This is the, equivalent fix for sysbus EHCI. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-29usb: fail usbdevice_create() when there is no USB busStefan Hajnoczi
Report an error instead of segfaulting when attaching a USB device to a machine with no USB busses: $ qemu-system-arm -machine vexpress-a9 \ -sd Fedora-17-armhfp-vexpress-mmcblk0.img \ -kernel vmlinuz-3.4.2-3.fc17.armv7hl \ -initrd initramfs-3.4.2-3.fc17.armv7hl.img \ -usbdevice disk:format=raw:test.img Note that the vexpress-a9 machine does not have a USB host controller. Reported-by: David Abdurachmanov <David.Abdurachmanov@cern.ch> Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-29usb: tag usb host adapters as not hotpluggable.Gerd Hoffmann
Hotplugging them simply doesn't work, so tag them accordingly to avoid users trying and then crashing qemu. For xhci there is nothing fundamental which prevents hotplug from working, we'll "only" need a exit() function which cleans up everything properly. That isn't for 1.3 though. For ehci+uhci+ohci hotplug can't be supported until qemu gains the capability to hotplug multifunction pci devices. https://bugzilla.redhat.com/show_bug.cgi?id=879096 Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-29qxl: reload memslots after migration, when qxl is in UNDEFINED modeYonit Halperin
The devram memslot stays active when qxl enters UNDEFINED mode (i.e, no primary surface). If migration has occurred while the device is in UNDEFINED stae, the memslots have to be reloaded at the destination. Fixes rhbz#874574 Signed-off-by: Yonit Halperin <yhalperi@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
2012-11-28event notifier: Fix setup for win32Jan Kiszka
The event notifier state is only reset by test_and_clear. But we created the windows event object with auto-reset, which subtly swallowed events. Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-28Merge remote-tracking branch 'bonzini/nbd-next' into stagingAnthony Liguori
* bonzini/nbd-next: nbd-server-add: Fix the default for 'writable' nbd: fix use of two uninitialized bytes when connecting to a named export Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-28Merge remote-tracking branch 'bonzini/scsi-next' into stagingAnthony Liguori
* bonzini/scsi-next: virtio-scsi: Fix subtle (guest) endian bug virtio-scsi: Fix some endian bugs with virtio-scsi iscsi: do not assume device is zero initialized iscsi: fix deadlock during login iscsi: fix segfault in url parsing Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-28Merge remote-tracking branch 'agraf/s390-for-upstream-1.3' into stagingAnthony Liguori
* agraf/s390-for-upstream-1.3: sclp: Fix uninitialized var in handle_write_event_buf(). s390: Fix ram_size updating in machine init Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-28Merge remote-tracking branch 'agraf/ppc-for-upstream-1.3' into stagingAnthony Liguori
* agraf/ppc-for-upstream-1.3: fbdev: fix pixman compile on old pixman vl.c: Fix broken -usb option pseries: Fix bug in PCI MSI allocation kvm: fix incorrect length in a loop over kvm dirty pages map PPC: Fix missing TRACE exception hw/ide/macio: Fix segfault caused by NULL DMAContext* Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-28Merge remote-tracking branch 'afaerber/qom-cpu-1.3' into stagingAnthony Liguori
* afaerber/qom-cpu-1.3: target-i386: Enable SSSE3 TCG support target-i386/cpu: Add missing flags to Haswell CPU model Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-28build: compile translate.o with -fno-gcse option on GCC 4.6.x and 4.7.[012]Paolo Bonzini
These versions of GCC require insane (>2GB) amounts of memory to compile translate.o. As a countermeasure, disable the culprit optimization pass. This should fix the buildbot failure for default_x86_64_fedora16. Anyway this is a good thing to do because people will try to compile 1.3 with less than 2GB of memory and complain. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-28virtio-scsi: Fix subtle (guest) endian bugDavid Gibson
The virtio-scsi config space is, by specification, in guest endian (which is ill-defined, but there you go). In virtio_scsi_get_config() we set up all the fields in there, using stl_raw(). Which is a problem for the max_channel and max_target fields, which are 16-bit, not 32-bit. For little-endian targets we get away with it by accident, since the first two bytes will still be correct, and the extra two bytes written (with zeroes) will be overwritten correctly by the next store. But for big-endian guests, this means the max_target field ends up as zero, which means the guest will only recognize a single disk on the virtio-scsi bus. This patch fixes the problem. Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Paul 'Rusty' Russell <rusty@rustcorp.com.au> Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-11-28virtio-scsi: Fix some endian bugs with virtio-scsiDavid Gibson
The virtio-scsi specification does not specify the correct endianness for fields in the request structure. It's therefore best to assume that it is "guest native" endian since that's the (stupid and poorly defined) norm in virtio. However, the qemu device for virtio-scsi has no byteswaps at all, and so will break if the guest has different endianness from the host. This patch fixes it by adding tswap() calls for the sense_len and resid fields in the request structure. In theory status_qualifier needs swaps as well, but that field is never actually touched. The tag field is a uint64_t, but since its value is completely arbitrary, it might as well be uint8_t[8] and so it does not need swapping. Cc: Paolo Bonzini <pbonzini@redhat.com> Cc: Paul 'Rusty' Russell <rusty@rustcorp.com.au> Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-11-28iscsi: do not assume device is zero initializedPeter Lieven
Without any complex checks we can't assume that an iscsi target is initialized to zero. Signed-off-by: Peter Lieven <pl@kamp.de> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-11-28iscsi: fix deadlock during loginPeter Lieven
If the connection is interrupted before the first login is successfully completed qemu-kvm is waiting forever in qemu_aio_wait(). This is fixed by performing an sync login to the target. If the connection breaks after the first successful login errors are handled internally by libiscsi. Signed-off-by: Peter Lieven <pl@kamp.de> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-11-28iscsi: fix segfault in url parsingPeter Lieven
If an invalid URL is specified iscsi_get_error(iscsi) is called with iscsi == NULL. Signed-off-by: Peter Lieven <pl@kamp.de> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-11-28nbd-server-add: Fix the default for 'writable'Michal Privoznik
The documentation to this monitor command tells, that 'writable' argument is optional and defaults to false. However, the code sets true as the default. But since some applications may already been using this, it's safer to fix the code and not documentation which would break those applications. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-11-28nbd: fix use of two uninitialized bytes when connecting to a named exportPaolo Bonzini
Reported-by: Michal Privoznik <mprivoznik@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2012-11-27rtc: Only call rtc_set_cmos when Register B SET flag is disabled.Alex Horn
This bug occurs when the SET flag of Register B is enabled. When an RTC data register (i.e. any of the ten time/calender CMOS bytes) is set, the data is (as expected) correctly stored in the cmos_data array. However, since the SET flag is enabled, the function rtc_set_time is not invoked. As a result, the field base_rtc in RTCState remains uninitialized. This causes a problem on subsequent writes which can end up overwriting data. To see this, consider writing data to Register A after having written data to any of the RTC data registers; the following figure illustrates the call stack for the Register A write operation: +- cmos_io_port_write +-- check_update_timer +---- get_next_alarm +------ rtc_update_time In rtc_update_time, get_guest_rtc calculates the wrong time and overwrites the previously written RTC data register values. Signed-off-by: Alex Horn <alex.horn@cs.ox.ac.uk> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2012-11-27virtio-rng: do not use g_assert_cmpintPaolo Bonzini
g_assert_cmpint is not available on glib 2.12, which is the minimum version required to build QEMU (we only require 2.16 to run tests, since that is the first version including GTester). Do not use it in hardware models, use a normal assertion instead. This fixes the buildbot failure for default_x86_64_rhel5. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>