[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 05/10] s390x/kvm: Log unmanageable program interrupti
From: |
Cornelia Huck |
Subject: |
[Qemu-devel] [PULL 05/10] s390x/kvm: Log unmanageable program interruptions |
Date: |
Tue, 10 Jun 2014 10:08:19 +0200 |
From: Thomas Huth <address@hidden>
The kernel only drops to userspace if an endless program interrupt loop
has been detected. Let's print an error message in this case to inform
the user about the crash and stop the affected CPU with a panic event,
just like it is already done for the external interruption loop detection.
Signed-off-by: Thomas Huth <address@hidden>
Signed-off-by: Jens Freimann <address@hidden>
Reviewed-by: Cornelia Huck <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>
---
target-s390x/kvm.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
index be703bd..9adda1b 100644
--- a/target-s390x/kvm.c
+++ b/target-s390x/kvm.c
@@ -83,6 +83,7 @@
#define DIAG_KVM_BREAKPOINT 0x501
#define ICPT_INSTRUCTION 0x04
+#define ICPT_PROGRAM 0x08
#define ICPT_EXT_INT 0x14
#define ICPT_WAITPSW 0x1c
#define ICPT_SOFT_INTERCEPT 0x24
@@ -966,6 +967,11 @@ static int handle_intercept(S390CPU *cpu)
case ICPT_INSTRUCTION:
r = handle_instruction(cpu, run);
break;
+ case ICPT_PROGRAM:
+ unmanageable_intercept(cpu, "program interrupt",
+ offsetof(LowCore, program_new_psw));
+ r = EXCP_HALTED;
+ break;
case ICPT_EXT_INT:
unmanageable_intercept(cpu, "external interrupt",
offsetof(LowCore, external_new_psw));
--
1.7.9.5
- [Qemu-devel] [PULL 00/10] s390 patches, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 02/10] s390x/kvm: make flic play well with old kernels, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 01/10] s390x/css: handle emw correctly for tsch, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 05/10] s390x/kvm: Log unmanageable program interruptions,
Cornelia Huck <=
- [Qemu-devel] [PULL 03/10] s390x/kvm: enable/reset cmma via vm attributes, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 04/10] s390x/kvm: Log unmanageable external interruptions, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 06/10] s390/virtio-ccw: migration support, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 07/10] s390x: consolidate floating interrupts, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 08/10] s390x/kvm: add alternative injection interface, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 10/10] s390x/kvm: inject via flic, Cornelia Huck, 2014/06/10
- [Qemu-devel] [PULL 09/10] s390x: cleanup interrupt injection, Cornelia Huck, 2014/06/10
- Re: [Qemu-devel] [PULL 00/10] s390 patches, Peter Maydell, 2014/06/10