kvm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [kvm-unit-tests PATCH v2 0/2] s390x: program interrupt handler
@ 2017-05-31 12:39 David Hildenbrand
  2017-05-31 12:39 ` [kvm-unit-tests PATCH v2 1/2] s390x: generate asm offsets for the lowcore David Hildenbrand
  2017-05-31 12:39 ` [kvm-unit-tests PATCH v2 2/2] s390x: pgm interrupt handler and a way to test them David Hildenbrand
  0 siblings, 2 replies; 9+ messages in thread
From: David Hildenbrand @ 2017-05-31 12:39 UTC (permalink / raw)
  To: kvm
  Cc: Paolo Bonzini, Radim Krčmář, Thomas Huth, david,
	Christian Borntraeger

Add a program interrupt handler and two simple program interrupt tests.

The check for the ADRESSING exception will fail on
- TCG without "target/s390x: addressing exceptions are suppressing"
- Old KVM versions without 492d8642eaef ("KVM: s390: Forward PSW to next
  instruction for addressing exceptions")

v1 -> v2: (s390x: generate asm offsets for the lowcore)
- Added missing field (mcck extended save area)
- Dropped alignment attribute for naturally aligned struct

v1 -> v2: (pgm interrupt handler and a way to test them)
- Renamed everything from irq->int/interrupt to keep it consistent
- Use global lowcore variable struct lowcore *lc;
- Safe+restore fpr and fpc in interrupt handler
- Setup pgm int handler using mvc instruction
- Renamed received_pgm_irq to check_pgm_int_code() and moved "report"
  into "check_pgm_int_code()"
- Minor style + comment fixes

David Hildenbrand (2):
  s390x: generate asm offsets for the lowcore
  s390x: pgm interrupt handler and a way to test them

 lib/s390x/asm-offsets.c     |  74 ++++++++++++++++++++++
 lib/s390x/asm/arch_def.h    | 146 ++++++++++++++++++++++++++++++++++++++++++++
 lib/s390x/asm/asm-offsets.h |  10 +++
 lib/s390x/asm/interrupt.h   |  18 ++++++
 lib/s390x/interrupt.c       |  82 +++++++++++++++++++++++++
 s390x/Makefile              |  10 ++-
 s390x/cstart64.S            |  55 +++++++++++++++++
 s390x/selftest.c            |  13 ++++
 8 files changed, 407 insertions(+), 1 deletion(-)
 create mode 100644 lib/s390x/asm-offsets.c
 create mode 100644 lib/s390x/asm/arch_def.h
 create mode 100644 lib/s390x/asm/asm-offsets.h
 create mode 100644 lib/s390x/asm/interrupt.h
 create mode 100644 lib/s390x/interrupt.c

-- 
2.9.3

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2017-05-31 14:23 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-31 12:39 [kvm-unit-tests PATCH v2 0/2] s390x: program interrupt handler David Hildenbrand
2017-05-31 12:39 ` [kvm-unit-tests PATCH v2 1/2] s390x: generate asm offsets for the lowcore David Hildenbrand
2017-05-31 12:39 ` [kvm-unit-tests PATCH v2 2/2] s390x: pgm interrupt handler and a way to test them David Hildenbrand
2017-05-31 12:51   ` Paolo Bonzini
2017-05-31 13:25     ` Thomas Huth
2017-05-31 14:23       ` Paolo Bonzini
2017-05-31 13:26     ` David Hildenbrand
2017-05-31 13:22   ` Thomas Huth
2017-05-31 13:30     ` David Hildenbrand

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).