- 26 Jan, 2011 6 commits
-
-
Christophe Lyon authored
Fix garbage collection of temporaries in Neon emulation. Signed-off-by:
Christophe Lyon <christophe.lyon@st.com> Reviewed-by:
Peter Maydell <peter.maydell@linaro.org> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Christophe Lyon authored
This patch fixes corner-case saturations, when the target range is zero. It merely removes the guard against (sh == 0), and makes: __ssat(0x87654321, 1) return 0xffffffff and set the saturation flag __usat(0x87654321, 0) return 0 and set the saturation flag Signed-off-by:
Christophe Lyon <christophe.lyon@st.com> Reviewed-by:
Peter Maydell <peter.maydell@linaro.org> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Alexandre Courbot authored
Update the PTEH register to contain the VPN at which an MMU exception occured as specified by the SH4 reference. Signed-off-by:
Alexandre Courbot <gnurou@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Aurelien Jarno authored
Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Aurelien Jarno authored
Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Edgar E. Iglesias authored
Signed-off-by:
Edgar E. Iglesias <edgar.iglesias@gmail.com>
-
- 25 Jan, 2011 9 commits
-
-
Edgar E. Iglesias authored
Signed-off-by:
Edgar E. Iglesias <edgar.iglesias@gmail.com>
-
Gerd Hoffmann authored
Zap unused divisor field. Raise the buffer size default. Signed-off-by:
Gerd Hoffmann <kraxel@redhat.com> Signed-off-by:
malc <av1474@comtv.ru>
-
Gerd Hoffmann authored
Request reasonable buffer sizes from pulseaudio. Without this pa_simple_write() can block quite long and lead to dropouts, especially with guests which use small audio ring buffers. Signed-off-by:
Gerd Hoffmann <kraxel@redhat.com> Signed-off-by:
malc <av1474@comtv.ru>
-
Gerd Hoffmann authored
Limit the size of data pieces processed by the pulseaudio worker threads. Never ever process more than 1/4 of the buffer at once. Background: The buffer area currently processed by the pulseaudio thread is blocked, i.e. the main thread (or iothread) can't fill in more data there. The buffer processing time is roughly real-time due to the pa_simple_write() call blocking when the output queue to the pulse server is full. Thus processing big chunks at once means blocking a large part of the buffer for a long time. This brings high latency and can lead to dropouts. When processing the buffer in smaller chunks the rpos handling becomes a problem though. The thread reads hw->rpos without knowing whenever qpa_run_out has already seen the last (small) chunk processed and updated rpos accordingly. There is no point in reading hw->rpos though, pa->rpos can be used instead. We just need to take care to initialize pa->rpos before kicking the thread. Signed-off-by:
Gerd Hoffmann <kraxel@redhat.com> Signed-off-by:
malc <av1474@comtv.ru>
-
Isaku Yamahata authored
use after free in do_wav_capture() on the error path. Signed-off-by:
Isaku Yamahata <yamahata@valinux.co.jp> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Isaku Yamahata authored
remove bogus HAS_AUDIO according to 738012be . Cc: Blue Swirl <blauwirbel@gmail.com> Cc: Huacai Chen <zltjiangshi@gmail.com> Cc: Aurelien Jarno <aurelien@aurel32.net> Signed-off-by:
Isaku Yamahata <yamahata@valinux.co.jp> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Isaku Yamahata authored
consolidate audio_init() and remove references to shoundhw. Signed-off-by:
Isaku Yamahata <yamahata@valinux.co.jp> Acked-by:
Blue Swirl <blauwirbel@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Alexandre Courbot authored
Exception index of address read error should be 0x0e0. Signed-off-by:
Alexandre Courbot <gnurou@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Alexandre Courbot authored
In cpu_sh4_invalidate_tlb, the UTLB was invalidated twice and the ITLB left unchaged, probably because of some unfortunate copy/paste. Signed-off-by:
Alexandre Courbot <gnurou@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 24 Jan, 2011 25 commits
-
-
Anthony Liguori authored
-
Fabien Chouteau authored
This register is activated by CPU_FEATURE_ASR17 in the feature field. Signed-off-by:
Fabien Chouteau <chouteau@adacore.com> Signed-off-by:
Blue Swirl <blauwirbel@gmail.com>
-
Fabien Chouteau authored
Leon3 is an open-source VHDL System-On-Chip, well known in space industry (more information on http://www.gaisler.com ). Leon3 is made of multiple components available in the GrLib VHDL library. Three devices are implemented: uart, timers and IRQ manager. You can find code for these peripherals in the grlib_* files. Signed-off-by:
Fabien Chouteau <chouteau@adacore.com> Signed-off-by:
Blue Swirl <blauwirbel@gmail.com>
-
Fabien Chouteau authored
This device exposes one parameter: - chardev (ptr) : Pointer to a qemu character device Emulation of GrLib devices is base on the GRLIB IP Core User's Manual: http://www.gaisler.com/products/grlib/grip.pdf Signed-off-by:
Fabien Chouteau <chouteau@adacore.com> Signed-off-by:
Blue Swirl <blauwirbel@gmail.com>
-
Fabien Chouteau authored
This device exposes two parameters: - set_pil_in (ptr) : A function to set the pil_in of the SPARC CPU - set_pil_in_opaque (ptr) : Opaque argument of the set_pil_in function Emulation of GrLib devices is base on the GRLIB IP Core User's Manual: http://www.gaisler.com/products/grlib/grip.pdf Signed-off-by:
Fabien Chouteau <chouteau@adacore.com> Signed-off-by:
Blue Swirl <blauwirbel@gmail.com>
-
Fabien Chouteau authored
This device exposes three parameters: - frequency (uint32) : The system frequency - irq-line (uint32) : IRQ line number for the first timer (others use irq-line + 1, irq-line + 2...) - nr-timers (uint32) : Number of timers Emulation of GrLib devices is base on the GRLIB IP Core User's Manual: http://www.gaisler.com/products/grlib/grip.pdf Signed-off-by:
Fabien Chouteau <chouteau@adacore.com> Signed-off-by:
Blue Swirl <blauwirbel@gmail.com>
-
Stefan Hajnoczi authored
Signed-off-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Stefan Hajnoczi authored
USB Mass Storage Devices sometimes have the RMB (removable) bit set in the SCSI INQUIRY response. Thumbdrives tend to have the bit set whereas hard disks do not. Operating systems differentiate between removable devices and fixed devices. Under Linux, the anaconda installer looks for removable devices. Under Windows, only fixed devices may have more than one partition and AutoRun is also affected by the removable bit. For these reasons, allow USB Mass Storage Devices to override the removable bit: qemu -usb -drive if=none,file=test.img,cache=none,id=disk0 -device usb-storage,drive=disk0,removable=on The default is off. Signed-off-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Stefan Hajnoczi authored
scsi-disk devices may wish to override the removable bit. Add support for a qdev property on SCSI devices. This is will be used by usb-msd. Signed-off-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Stefan Hajnoczi authored
Provide the "removable" qdev property bit to override the SCSI INQUIRY removable (RMB) bit for non-CDROM devices. This will be used by USB Mass Storage Devices, which sometimes have this guest-visible bit set and sometimes do not. They therefore requires a means for user configuration. Signed-off-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Aurelien Jarno authored
The rule is: - don't save PC if the exception is only triggered by softmmu. - save PC if the exception can be triggered by an helper. Fix a 64-bit kernel crash when loading modules. Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Stefan Hajnoczi authored
The backing format should be honored during image creation. For some reason we currently use the image format to open the backing file. This fails when the backing file has a different format than the image being created. Keep the image and backing format drivers completely separate. Also print the backing filename if there is an error opening the backing file instead of the image filename. Signed-off-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Acked-by:
Jes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Markus Armbruster authored
Watch this: (qemu) drive_add 0 if=none,file=tmp.img OK (qemu) info block none0: type=hd removable=0 file=tmp.img ro=0 drv=raw encrypted=0 (qemu) drive_del none0 Segmentation fault (core dumped) do_drive_del()'s code to clean up the pointer from a qdev using the drive back to the drive needs to check whether such a device exists. Signed-off-by:
Markus Armbruster <armbru@redhat.com> Reviewed-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Markus Armbruster authored
This makes the errors point to the error location, and fixes drive_add to report errors in the monitor instead of stderr. While there, tweak a few error messages for consistency. Signed-off-by:
Markus Armbruster <armbru@redhat.com> Reviewed-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Markus Armbruster authored
When cyls, heads or secs are out of range, the error message prints buf, which points to the value of option "if". Bogus, may even be null. Drop that. Signed-off-by:
Markus Armbruster <armbru@redhat.com> Reviewed-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Pierre Riteau authored
b02bea3a added a check on the return value of bdrv_write and aborts migration when it fails. However, if the size of the block device to migrate is not a multiple of BLOCK_SIZE (currently 1 MB), the last bdrv_write will fail with -EIO. Fixed by calling bdrv_write with the correct size of the last block. Signed-off-by:
Pierre Riteau <Pierre.Riteau@irisa.fr> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Stefan Hajnoczi authored
QED relies on the underlying filesystem to extend the file and maintain its size. Check that images are not created on a block device. Signed-off-by:
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Kevin Wolf authored
Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Stefan Weil authored
With bm == NULL, other code in the same function would crash. This bug was reported by cppcheck: hw/ide/pci.c:280: error: Possible null pointer dereference: bm Cc: Michael S. Tsirkin <mst@redhat.com> Signed-off-by:
Stefan Weil <weil@mail.berlios.de> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Kevin Wolf authored
qcow2 calls bdrv_flush() after performing COW in order to ensure that the L2 table change is never written before the copy is safe on disk. Now that the L2 table is cached, we can wait with flushing until we write out the next L2 table. Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Kevin Wolf authored
Use the new functions of qcow2-cache.c for everything that works on refcount block and L2 tables. Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Kevin Wolf authored
This adds some new cache functions to qcow2 which can be used for caching refcount blocks and L2 tables. When used with cache=writethrough they work like the old caching code which is spread all over qcow2, so for this case we have merely a cleanup. The interesting case is with writeback caching (this includes cache=none) where data isn't written to disk immediately but only kept in cache initially. This leads to some form of metadata write batching which avoids the current "write to refcount block, flush, write to L2 table" pattern for each single request when a lot of cluster allocations happen. Instead, cache entries are only written out if its required to maintain the right order. In the pure cluster allocation case this means that all metadata updates for requests are done in memory initially and on sync, first the refcount blocks are written to disk, then fsync, then L2 tables. This improves performance of scenarios with lots of cluster allocations noticably (e.g. installation or after taking a snapshot). Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Christoph Hellwig authored
Merge ide_dma_submit_check into it's only caller. Also use tail recursion using a goto instead of a real recursion - this avoid overflowing the stack in the pathological situation of an recurring error that is ignored. We'll still be busy looping in ide_dma_cb, but at least won't eat up all stack space after this. Signed-off-by:
Christoph Hellwig <hch@lst.de> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Christoph Hellwig authored
Currenly the code only resets the io_buffer_index field for reads, but the code seems to expect this for all types of I/O. I guess we simply don't hit large enough transfers that would require this often enough. Signed-off-by:
Christoph Hellwig <hch@lst.de> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-
Christoph Hellwig authored
Factor the DMA I/O path that is duplicated between read and write commands, into common helpers using the s->is_read flag added for the macio ATA controller. Signed-off-by:
Christoph Hellwig <hch@lst.de> Signed-off-by:
Kevin Wolf <kwolf@redhat.com>
-