From f9a98780491e1a4a31adfe02fefc0892f880552e Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Tue, 5 Dec 2017 17:18:37 +0100 Subject: [PATCH] x86/HVM: tighten re-issue check in hvmemul_do_io() I'm not sure why we had left out the address check in case of indirect accesses (where "data" holds a guest physical address). Signed-off-by: Jan Beulich Reviewed-by: Paul Durrant --- xen/arch/x86/hvm/emulate.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/hvm/emulate.c b/xen/arch/x86/hvm/emulate.c index e924ce07c4..b8c94c926d 100644 --- a/xen/arch/x86/hvm/emulate.c +++ b/xen/arch/x86/hvm/emulate.c @@ -163,7 +163,8 @@ static int hvmemul_do_io( (p.count > *reps) || (p.dir != dir) || (p.df != df) || - (p.data_is_ptr != data_is_addr) ) + (p.data_is_ptr != data_is_addr) || + (data_is_addr && (p.data != data)) ) domain_crash(currd); if ( data_is_addr ) -- 2.39.5