qemu-patch-raspberry4/target-s390x
Alexander Yarygin 6cb1e49de5 s390x/kvm: Support access register mode for KVM_S390_MEM_OP ioctl
Access register mode is one of the modes that control dynamic address
translation. In this mode the address space is specified by values of
the access registers. The effective address-space-control element is
obtained from the result of the access register translation. See
the "Access-Register Introduction" section of the chapter 5 "Program
Execution" in "Principles of Operations" for more details.

When the CPU is in AR mode, the s390_cpu_virt_mem_rw() function must
know which access register number to use for address translation.
This patch does several things:
- add new parameter 'uint8_t ar' to that function
- decode ar number from intercepted instructions
- pass the ar number to s390_cpu_virt_mem_rw(), which in turn passes it
to the KVM_S390_MEM_OP ioctl.

Signed-off-by: Alexander Yarygin <yarygin@linux.vnet.ibm.com>
Reviewed-by: Thomas Huth <thuth@linux.vnet.ibm.com>
Reviewed-by: David Hildenbrand <dahi@linux.vnet.ibm.com>
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
2015-04-30 13:21:42 +02:00
..
arch_dump.c target-s390x: Add missing 'static' and 'const' attributes 2014-03-27 19:22:48 +04:00
cc_helper.c target-s390x: fix and optimize slb* and slbg* computation of carry/borrow flag 2015-02-03 12:27:05 -08:00
cpu-qom.h s390x/migration: migrate CPU state 2014-10-10 13:31:51 +02:00
cpu.c s390x/kvm: implement handling of new SIGP orders 2015-03-10 09:26:22 +01:00
cpu.h s390x/kvm: Support access register mode for KVM_S390_MEM_OP ioctl 2015-04-30 13:21:42 +02:00
fpu_helper.c softmmu: introduce cpu_ldst.h 2014-06-05 16:10:33 +02:00
gdbstub.c s390x/gdb: coding style fixes 2014-09-01 09:45:19 +02:00
helper.c s390x/mmu: Use access type definitions instead of magic values 2015-04-30 13:21:42 +02:00
helper.h target-s390: Implement LURA, LURAG, STURG 2015-02-03 12:06:37 -08:00
insn-data.def target-s390: Implement ECAG 2015-02-03 12:06:37 -08:00
insn-format.def target-s390: Add format based disassassmbly infrastructure 2013-01-05 12:00:27 -08:00
int_helper.c tcg: Invert the inclusion of helper.h 2014-05-28 09:33:54 -07:00
interrupt.c s390x: Fix sclp console input 2014-11-05 12:01:28 +01:00
ioinst.c s390x/kvm: Support access register mode for KVM_S390_MEM_OP ioctl 2015-04-30 13:21:42 +02:00
ioinst.h s390x/ioinst: Rework memory access in TPI instruction 2015-02-18 09:37:15 +01:00
kvm.c s390x/kvm: Support access register mode for KVM_S390_MEM_OP ioctl 2015-04-30 13:21:42 +02:00
machine.c s390x/kvm: implement handling of new SIGP orders 2015-03-10 09:26:22 +01:00
Makefile.objs s390x/mmu: Move mmu_translate() and friends to separate file 2015-02-18 09:36:38 +01:00
mem_helper.c s390x/mmu: Skip exceptions properly when translating addresses for debug 2015-02-18 09:37:14 +01:00
misc_helper.c s390x: introduce defines for SIGP condition codes 2015-03-10 09:26:22 +01:00
mmu_helper.c s390x/kvm: Support access register mode for KVM_S390_MEM_OP ioctl 2015-04-30 13:21:42 +02:00
translate.c tcg: Change translator-side labels to a pointer 2015-03-13 12:28:18 -07:00