From: Mahmoud Mandour <ma.mando...@gmail.com> It's not necessary to lock the address translation portion of the vcpu_mem_access callback.
Signed-off-by: Mahmoud Mandour <ma.mando...@gmail.com> Reviewed-by: Alex Bennée <alex.ben...@linaro.org> Message-Id: <20210714172151.8494-3-ma.mando...@gmail.com> Signed-off-by: Alex Bennée <alex.ben...@linaro.org> --- contrib/plugins/cache.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/contrib/plugins/cache.c b/contrib/plugins/cache.c index 4a71602639..695fb969dc 100644 --- a/contrib/plugins/cache.c +++ b/contrib/plugins/cache.c @@ -355,15 +355,14 @@ static void vcpu_mem_access(unsigned int vcpu_index, qemu_plugin_meminfo_t info, struct qemu_plugin_hwaddr *hwaddr; InsnData *insn; - g_mutex_lock(&mtx); hwaddr = qemu_plugin_get_hwaddr(info, vaddr); if (hwaddr && qemu_plugin_hwaddr_is_io(hwaddr)) { - g_mutex_unlock(&mtx); return; } effective_addr = hwaddr ? qemu_plugin_hwaddr_phys_addr(hwaddr) : vaddr; + g_mutex_lock(&mtx); if (!access_cache(dcache, effective_addr)) { insn = (InsnData *) userdata; insn->dmisses++; -- 2.32.0.264.g75ae10bc75