From 0925f805e8b73d31bb2d9fc6a28c6e892fea5b66 Mon Sep 17 00:00:00 2001 From: Hollis Blanchard Date: Fri, 1 May 2009 15:18:00 -0500 Subject: [PATCH] Revert "Sync idcache after emualted DMA operations for ia64" This reverts commit 9dc99a28236161a5a1b4c58f1e9c4ec6179cb976. Aside from the other issues discussed on kvm-devel, this commit breaks the PowerPC build. Signed-off-by: Hollis Blanchard Signed-off-by: Avi Kivity --- cache-utils.h | 14 -------------- cutils.c | 3 --- dma-helpers.c | 12 ------------ exec.c | 3 --- 4 files changed, 32 deletions(-) diff --git a/cache-utils.h b/cache-utils.h index 2a07fbde35..b45fde44e8 100644 --- a/cache-utils.h +++ b/cache-utils.h @@ -33,22 +33,8 @@ static inline void flush_icache_range(unsigned long start, unsigned long stop) asm volatile ("sync" : : : "memory"); asm volatile ("isync" : : : "memory"); } -#define qemu_sync_idcache flush_icache_range -#else -#ifdef __ia64__ -static inline void qemu_sync_idcache(unsigned long start, unsigned long stop) -{ - while (start < stop) { - asm volatile ("fc %0" :: "r"(start)); - start += 32; - } - asm volatile (";;sync.i;;srlz.i;;"); -} #else -static inline void qemu_sync_idcache(unsigned long start, unsigned long stop) {} -#endif - #define qemu_cache_utils_init(envp) do { (void) (envp); } while (0) #endif diff --git a/cutils.c b/cutils.c index e2bee1e8f4..a1652ab0bc 100644 --- a/cutils.c +++ b/cutils.c @@ -23,7 +23,6 @@ */ #include "qemu-common.h" #include "host-utils.h" -#include "cache-utils.h" #include void pstrcpy(char *buf, int buf_size, const char *str) @@ -177,8 +176,6 @@ void qemu_iovec_from_buffer(QEMUIOVector *qiov, const void *buf, size_t count) if (copy > qiov->iov[i].iov_len) copy = qiov->iov[i].iov_len; memcpy(qiov->iov[i].iov_base, p, copy); - qemu_sync_idcache((unsigned long)qiov->iov[i].iov_base, - (unsigned long)(qiov->iov[i].iov_base + copy)); p += copy; count -= copy; } diff --git a/dma-helpers.c b/dma-helpers.c index f71ca3baf2..f9eb2240b2 100644 --- a/dma-helpers.c +++ b/dma-helpers.c @@ -9,7 +9,6 @@ #include "dma.h" #include "block_int.h" -#include "cache-utils.h" static AIOPool dma_aio_pool; @@ -138,8 +137,6 @@ static BlockDriverAIOCB *dma_bdrv_io( BlockDriverCompletionFunc *cb, void *opaque, int is_write) { - int i; - QEMUIOVector *qiov; DMAAIOCB *dbs = qemu_aio_get_pool(&dma_aio_pool, bs, cb, opaque); dbs->acb = NULL; @@ -152,15 +149,6 @@ static BlockDriverAIOCB *dma_bdrv_io( dbs->bh = NULL; qemu_iovec_init(&dbs->iov, sg->nsg); dma_bdrv_cb(dbs, 0); - - if (!is_write) { - qiov = &dbs->iov; - for (i = 0; i < qiov->niov; ++i) { - qemu_sync_idcache((unsigned long)qiov->iov[i].iov_base, - (unsigned long)(qiov->iov[i].iov_base + qiov->iov[i].iov_len)); - } - } - if (!dbs->acb) { qemu_aio_release(dbs); return NULL; diff --git a/exec.c b/exec.c index 0c5545ec84..a5bca49c27 100644 --- a/exec.c +++ b/exec.c @@ -3400,9 +3400,6 @@ void cpu_physical_memory_unmap(void *buffer, target_phys_addr_t len, addr1 += l; access_len -= l; } - if (kvm_enabled()) - flush_icache_range((unsigned long)buffer, - (unsigned long)buffer + access_len); } return; } -- 2.11.4.GIT