qemu: include fix for TRIM passthrough for IDE devices
This commit is contained in:
parent
d025294eb7
commit
32c2168e1f
@ -1 +1,2 @@
|
|||||||
|
4d032f7e42c4f75dc71701f92077a85a fix-trim-ide.patch
|
||||||
6726977292b448cbc7f89998fac6983b qemu-2.1.0.tar.bz2
|
6726977292b448cbc7f89998fac6983b qemu-2.1.0.tar.bz2
|
||||||
|
@ -7,12 +7,14 @@
|
|||||||
|
|
||||||
name=qemu
|
name=qemu
|
||||||
version=2.1.0
|
version=2.1.0
|
||||||
release=1
|
release=2
|
||||||
source=(http://wiki.qemu.org/download/qemu-$version.tar.bz2)
|
source=(http://wiki.qemu.org/download/qemu-$version.tar.bz2 fix-trim-ide.patch)
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
|
|
||||||
cd $name-$version
|
cd $name-$version
|
||||||
|
# fix TRIM passthrough for IDE devices
|
||||||
|
patch -p1 -i $SRC/fix-trim-ide.patch
|
||||||
|
|
||||||
./configure --prefix=/usr \
|
./configure --prefix=/usr \
|
||||||
--cc="${CC:=gcc}" \
|
--cc="${CC:=gcc}" \
|
||||||
|
14
qemu/fix-trim-ide.patch
Normal file
14
qemu/fix-trim-ide.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
diff --git a/hw/ide/core.c b/hw/ide/core.c
|
||||||
|
index db191a6..7256592 100644
|
||||||
|
--- a/hw/ide/core.c
|
||||||
|
+++ b/hw/ide/core.c
|
||||||
|
@@ -688,7 +688,8 @@ void ide_dma_cb(void *opaque, int ret)
|
||||||
|
sector_num, n, s->dma_cmd);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
- if (!ide_sect_range_ok(s, sector_num, n)) {
|
||||||
|
+ if ((s->dma_cmd == IDE_DMA_READ || s->dma_cmd == IDE_DMA_WRITE) &&
|
||||||
|
+ !ide_sect_range_ok(s, sector_num, n)) {
|
||||||
|
dma_buf_commit(s);
|
||||||
|
ide_dma_error(s);
|
||||||
|
return;
|
Loading…
Reference in New Issue
Block a user