linux/arch/s390/kvm
David Hildenbrand a69cbe81b2 KVM: s390: guestdbg: filter PER i-fetch on EXECUTE properly
When we get a PER i-fetch event on an EXECUTE or EXECUTE RELATIVE LONG
instruction, because the executed instruction generated a PER i-fetch
event, then the PER address points at the EXECUTE function, not the
fetched one.

Therefore, when filtering PER events, we have to take care of the
really fetched instruction, which we can only get by reading in guest
virtual memory.

For icpt code 4 and 56, we directly have additional information about an
EXECUTE instruction at hand. For icpt code 8, we always have to read
in guest virtual memory.

Signed-off-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Reviewed-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
[small fixes]
2017-01-30 11:19:17 +01:00
..
diag.c KVM: s390: provide logging for diagnose 0x500 2016-06-10 12:07:26 +02:00
gaccess.c KVM: s390: Get rid of ar_t 2017-01-30 11:17:29 +01:00
gaccess.h KVM: s390: prepare to read random guest instructions 2017-01-30 11:19:16 +01:00
guestdbg.c KVM: s390: guestdbg: filter PER i-fetch on EXECUTE properly 2017-01-30 11:19:17 +01:00
intercept.c KVM: s390: guestdbg: filter PER i-fetch on EXECUTE properly 2017-01-30 11:19:17 +01:00
interrupt.c ktime: Cleanup ktime_set() usage 2016-12-25 17:21:22 +01:00
irq.h KVM: s390: irq routing for adapter interrupts. 2014-03-21 13:43:00 +01:00
Kconfig KVM: halt_polling: provide a way to qualify wakeups during poll 2016-05-13 17:29:23 +02:00
kvm-s390.c KVM: s390: prepare to read random guest instructions 2017-01-30 11:19:16 +01:00
kvm-s390.h KVM: s390: guestdbg: filter PER i-fetch on EXECUTE properly 2017-01-30 11:19:17 +01:00
Makefile KVM: s390: vsie: initial support for nested virtualization 2016-06-21 09:43:33 +02:00
priv.c KVM: s390: Get rid of ar_t 2017-01-30 11:17:29 +01:00
sigp.c KVM: s390: don't use CPUSTAT_WAIT to detect if a VCPU is idle 2016-06-21 09:43:45 +02:00
sthyi.c KVM: s390: Fix STHYI buffer alignment for diag224 2016-10-26 13:46:44 +02:00
trace-s390.h KVM: s390: obey kptr_restrict in traces 2015-12-15 17:06:32 +01:00
trace.h KVM: s390: trace and count all skey intercepts 2016-06-10 12:07:31 +02:00
vsie.c KVM: s390: instruction-execution-protection support 2017-01-30 11:17:28 +01:00