]> git.proxmox.com Git - mirror_qemu.git/commit - target-s390x/mmu_helper.c
s390x/kvm: Support access register mode for KVM_S390_MEM_OP ioctl
authorAlexander Yarygin <yarygin@linux.vnet.ibm.com>
Thu, 5 Mar 2015 09:36:48 +0000 (12:36 +0300)
committerCornelia Huck <cornelia.huck@de.ibm.com>
Thu, 30 Apr 2015 11:21:42 +0000 (13:21 +0200)
commit6cb1e49de58cab8f243b05a971a9a1f80ab3223d
tree70d3b5f0b3a7c8498f1ee941a85b8227d63bb0f4
parenta9bcd1b8719dea2e91512238d810e2a0037e174d
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>
hw/s390x/s390-pci-inst.c
hw/s390x/s390-pci-inst.h
target-s390x/cpu.h
target-s390x/ioinst.c
target-s390x/kvm.c
target-s390x/mmu_helper.c