- 25 4月, 2010 5 次提交
-
-
由 Juergen Lock 提交于
Turns out on those versions of FreeBSD (>= 7.x) that know OSS_GETVERSION the ioctl doesn't actually work yet (except in the Linuxolator), so if building on FreeBSD assume the sound drivers are new enough if the ioctl returns the errno it does currently on FreeBSD. (Rev 2 after private discussion with malc.) Signed-off-by: NJuergen Lock <nox@jelal.kn-bremen.de> Signed-off-by: Nmalc <av1474@comtv.ru> (cherry picked from commit 72ff25e4)
-
由 malc 提交于
Previous patch introduced subtle regression, in cases when OSS_GETVERSION fails the code wasn't falling back to SNDCTL_DSP_SETFRAGMENT. Signed-off-by: Nmalc <av1474@comtv.ru> (cherry picked from commit 3d709fe7)
-
由 malc 提交于
Signed-off-by: Nmalc <av1474@comtv.ru> (cherry picked from commit 6d246526)
-
由 malc 提交于
This fixes a problem with a previous patch spotted by Juergen Lock, thanks to him again. Signed-off-by: Nmalc <av1474@comtv.ru> (cherry picked from commit 78d9356d)
-
由 malc 提交于
Thanks to Juergen Lock. Signed-off-by: Nmalc <av1474@comtv.ru> (cherry picked from commit e726fe7d)
-
- 24 4月, 2010 1 次提交
-
-
由 Stefan Hajnoczi 提交于
A new iovec array is allocated when creating a merged write request. This patch ensures that the iovec array is deleted in addition to its qiov owner. Reported-by: NLeszek Urbanski <tygrys@moo.pl> Signed-off-by: NStefan Hajnoczi <stefanha@linux.vnet.ibm.com> Signed-off-by: NKevin Wolf <kwolf@redhat.com> (cherry picked from commit 1e1ea48d)
-
- 19 4月, 2010 6 次提交
-
-
由 Gerd Hoffmann 提交于
Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 6ac08101)
-
由 Gerd Hoffmann 提交于
All callers of lsi_reselect have a lsi_request struct at hand anyway. So just pass it directly instead of having lsi_reselect search for it using the tag. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit aa4d32c4)
-
由 Gerd Hoffmann 提交于
Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit b96a0da0)
-
由 Gerd Hoffmann 提交于
Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit daa70311)
-
由 Gerd Hoffmann 提交于
Right now lsi_request is allocated when a request is queued and released when a request is unqueued. With this patch applied the lsi_request is kept for the whole lifetime of the scsi request. Rationale: We can use it for per-request data then. The patch does that already for the request tag. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit af12ac98)
-
由 Gerd Hoffmann 提交于
Replace the funky array logic for queued commands with standard qemu list functions. Also rename lsi_queue to lsi_request. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 042ec49d)
-
- 14 4月, 2010 3 次提交
-
-
由 Stefan Weil 提交于
Register fp (frame pointer) is a bad choice for compilations without optimisation, because the compiler makes heavy use of this register (so the resulting code crashes). Register s0 had been used for TCG_AREG1 in earlier releases, but was no longer used and is now free for TCG_AREG0. The resulting code works for compilations without optimisation (tested with qemu mips in qemu mips on x86 host). Signed-off-by: NStefan Weil <weil@mail.berlios.de> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net>
-
由 Aurelien Jarno 提交于
Since commit 8da3ff18 ("MMIO callback interface changes"), the addresses passed to the I/O functions are an offset to the start of the area. As a consequence, there is no need to correct the address using the value of IOBR. This make possible the use of the default MMIO functions. Moreover the addresses are now remaped when the value if IOBR change. The memory area corresponds to the devices behing the PCI bus, it should not be mapped by the PCI controller. Remove the corresponding code. Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry-picked from commit 5ba9e952)
-
由 Marcelo Tosatti 提交于
Do not allow the vcpus to execute if the vm is stopped. Fixes -incoming with CONFIG_IOTHREAD enabled. Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com> (cherry picked from commit c5f32c99)
-
- 11 4月, 2010 2 次提交
-
-
由 Chris Webb 提交于
During boot, the screen gets resized to height 1 and a mouse click at this point will cause a division by zero when calculating the absolute pointer position from the pixel (x, y). Return a click in the middle of the screen instead in this case. Signed-off-by: NChris Webb <chris@arachsys.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit cc39a92c)
-
由 Eduardo Habkost 提交于
There are many problems with net_set_boot_mask(): 1) It is broken when using the device model instead of "-net nic". Example: $ qemu-system-x86_64 -device rtl8139,vlan=0,id=net0,mac=52:54:00:82:41:fd,bus=pci.0,addr=0x4 -net user,vlan=0,name=hostnet0 -vnc 0.0.0.0:0 -boot n Cannot boot from non-existent NIC $ 2) The mask was previously used to set which boot ROMs were supposed to be loaded, but this was changed long time ago. Now all ROM images are loaded, and SeaBIOS takes care of jumping to the right boot entry point depending on the boot settings. 3) Interpretation and validation of the boot parameter letters is done on the machine type code. Examples: PC accepts only a,b,c,d,n as valid boot device letters. mac99 accepts only a,b,c,d,e,f. As a side-effect of this change, qemu-kvm won't abort anymore if using "-boot n" on a machine with no network devices. Checking if the requested boot device is valid is now a task for the BIOS or the machine-type code. Signed-off-by: NEduardo Habkost <ehabkost@redhat.com> Acked-by: NJuan Quintela <quintela@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry-picked from da1fcfda)
-
- 10 4月, 2010 15 次提交
-
-
由 Kevin Wolf 提交于
If we complete a request with a failure we need to remove it from the list of requests that are in flight. If we don't do it, the next time the same AIOCB is used for a cluster allocation it will create a loop in the list and qemu will hang in an endless loop. Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit c644db3d)
-
由 Kevin Wolf 提交于
Returning -EIO is far from optimal, but at least it's an error code. Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 171e3d6b)
-
由 Kevin Wolf 提交于
Previously multiwrite_user_cb was never called if a request in the multiwrite batch failed right away because it did set mcb->error immediately. Make it look more like a normal callback to fix this. Reported-by: NJuan Quintela <quintela@redhat.com> Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 7eb58a6c)
-
由 Kevin Wolf 提交于
Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 0f0b604b)
-
由 Kevin Wolf 提交于
When two requests of the same multiwrite batch fail, the callback of all requests in that batch were called twice. This could have any kind of nasty effects, in my case it lead to use after free and eventually a segfault. Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit cb6d3ca0)
-
由 Gerd Hoffmann 提交于
In case s->version is shorter than 4 bytes we overflow the memcpy src buffer. Fix it by clearing the target buffer, then copy only the amount of bytes we actually have. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from 314b1811) Signed-off-by: NKevin Wolf <kwolf@redhat.com>
-
由 Kevin Wolf 提交于
The current implementation of alloc_refcount_block and grow_refcount_table has fundamental problems regarding error handling. There are some places where an I/O error means that the image is going to be corrupted. I have found that the only way to fix this is to completely rewrite the thing. In detail, the problem is that the refcount blocks itself are allocated using alloc_refcount_noref (to avoid endless recursion when updating the refcount of the new refcount block, which migh access just the same refcount block but its allocation is not yet completed...). Only at the end of the refcount allocation the refcount of the refcount block is increased. If an error happens in between, the refcount block is in use, but has a refcount of zero and will likely be overwritten later. The new approach is explained in comments in the code. The trick is basically to let new refcount blocks describe their own refcount, so their refcount will be automatically changed when they are hooked up in the refcount table. Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 92dcb59f)
-
由 Kevin Wolf 提交于
When the refcount table grows, it doesn't only grow by one entry but reserves some space for future refcount blocks. The algorithm to calculate the number of entries stays the same with the fixes, so factor it out before replacing the rest. As Juan suggested take the opportunity to simplify the code a bit. Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit 05121aed)
-
由 Christoph Hellwig 提交于
If we go over the maximum number of iovecs support by syscall we get back EINVAL from the kernel which translate to I/O errors for the guest. Add a MAX_IOV defintion for platforms that don't have it. For now we use the same 1024 define that's used on Linux and various other platforms, but until the windows block backend implements some kind of vectored I/O it doesn't matter. Signed-off-by: NChristoph Hellwig <hch@lst.de> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com> (cherry picked from commit e2a305fb) Signed-off-by: NKevin Wolf <kwolf@redhat.com>
-
由 Kevin Wolf 提交于
If the parser fails to parse the key in parse_pair, it will access a NULL pointer. A simple way to trigger this is sending {foo} via QMP. This patch turns the segfault into a syntax error reply. Signed-off-by: NKevin Wolf <kwolf@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit d758d90f)
-
由 Aurelien Jarno 提交于
Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit f7177937)
-
由 Aurelien Jarno 提交于
The store queues are located from 0xe0000000 to 0xe3ffffff. Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit b1563142123593581895049568c5526b1e91da7b)
-
由 Aurelien Jarno 提交于
There is an ITLB access violation if SR_MD=0 (user mode) while the high bit of the protection key is 0 (priviledge mode). Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit bc13ad29e6b7484ccd5e7ee0f5d0f966585eb4c9)
-
由 Aurelien Jarno 提交于
The mem_idx is wrongly computed. As written in target-sh4/cpu.h, mode 0 corresponds to kernel mode (SR_MD = 1), while mode 1 corresponds to user mode (SR_MD = 0). Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 33b8f5546cc16eaa3d89fe133a9843c794b65d6c)
-
由 Aurelien Jarno 提交于
When the MMUCR TI bit is set, all the UTLB and ITLB entries should be flushed. Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit e781d1285fc3b81d689ba25360c6c272116387fa)
-
- 06 4月, 2010 1 次提交
-
-
由 Paul Brook 提交于
Only raise an interrupt if the TD has actually completed. Signed-off-by: NPaul Brook <paul@codesourcery.com>
-
- 29 3月, 2010 1 次提交
-
-
由 Aurelien Jarno 提交于
Branch offsets should only be overwritten during relocation, to support partial retranslation. Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 6d8ff4d8)
-
- 20 3月, 2010 2 次提交
-
-
由 Aurelien Jarno 提交于
Since commit 6113d6d3 QEMU crashes on ARM hosts. This is not a bug of this commit, but a latent bug revealed by this commit. The TCG code is called through a procedure call using the prologue and epilogue code. This code does not save and restore enough registers. The "Procedure Call Standard for the ARM Architecture" says: A subroutine must preserve the contents of the registers r4-r8, r10, r11 and SP (and r9 in PCS variants that designate r9 as v6). The current code only saves and restores r9 to r11, and misses r4 to r8. The patch fixes that by saving r4 to r12. Theoretically there is no need to save and restore r12, but an even number of registers have to be saved as per EABI. Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 4e17eae9)
-
由 Igor V. Kovalenko 提交于
This is a workaround only, and is a partial revert of a few changes to BMDMAState which removed pci_dev field on the way. - cmd646 pci_from_bm() expects bm->unit value to correspond with bm data being passed to callback as opaque pointer. This breaks when write to dma control register of second channel happens when no dma operation is in progress, so bm->unit is zero for second channel, and pci_from_bm() returns garbage pointer. Crash happens shortly after that while dereferencing that pointer. v0->v1: cleaned up dead code from pci_from_bm. Signed-off-by: NIgor V. Kovalenko <igor.v.kovalenko@gmail.com> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com> (cherry picked from commit 90228ee3)
-
- 16 3月, 2010 2 次提交
-
-
由 Jan Kiszka 提交于
The missing '@' broke 'udp::<port>@:<port>' parsing. Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 39324ca4)
-
由 Jan Kiszka 提交于
This fixes eg. "-nographic -serial mon:stdio [-serial ...]". Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 18141ed6)
-
- 15 3月, 2010 1 次提交
-
-
由 Vagrant Cascadian 提交于
here's a trivial patch to fix the spelling of "compatibility": Signed-off-by: NVagrant Cascadian <vagrant@freegeek.org> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com> (cherry picked from commit 66c80e75)
-
- 13 3月, 2010 1 次提交
-
-
由 Gerd Hoffmann 提交于
Fix the floppy controller init wrappers to set the drive properties only in case the DriveInfo pointers passed in are non NULL. This allows to set the properties using -global. Signed-off-by: NGerd Hoffmann <kraxel@redhat.com> Signed-off-by: NAurelien Jarno <aurelien@aurel32.net> (cherry picked from commit 995bf0ca)
-