From: Alexander Graf Date: Thu, 17 Dec 2009 12:56:47 +0000 (+0100) Subject: target-s390: Fail on unknown instructions X-Git-Tag: v0.13.0-rc0~1934 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=d7963c43b9646e4dfc69a4253c61e4bab7b661cd;p=qemu.git target-s390: Fail on unknown instructions We were being a bit too nice and didn't give the guest an invalid instruction interrupt. While that works, it's not exactly the fastest thing to do, since now the guest doesn't know that we're not really implementing that instruction, so it continues doing it. We run into this with the set_page_unstable hint instruction. So let's bail out in these cases. Signed-off-by: Alexander Graf Signed-off-by: Aurelien Jarno --- diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c index b6aac424d..099256392 100644 --- a/target-s390x/kvm.c +++ b/target-s390x/kvm.c @@ -405,7 +405,7 @@ static int handle_instruction(CPUState *env, struct kvm_run *run) unsigned int ipa0 = (run->s390_sieic.ipa & 0xff00); uint8_t ipa1 = run->s390_sieic.ipa & 0x00ff; int ipb_code = (run->s390_sieic.ipb & 0x0fff0000) >> 16; - int r = 0; + int r = -1; dprintf("handle_instruction 0x%x 0x%x\n", run->s390_sieic.ipa, run->s390_sieic.ipb); switch (ipa0) {