qemu-e2k/hw/s390x
David Hildenbrand 67db1306a2 hw/s390x/s390-skeys: use memory mapping to detect which storage keys to migrate
Let's use the guest_phys_blocks API to get physical memory regions
that are well defined inside our physical address space and migrate the
storage keys of these.

This is a preparation for having memory besides initial ram defined in
the guest physical address space, for example, via memory devices. We
get rid of the ms->ram_size dependency.

Please note that we will usually have very little (--> 1) physical
ranges. With virtio-mem might have significantly more ranges in the
future. If that turns out to be a problem (e.g., total memory
footprint of the list), we could look into a memory mapping
API that avoids creation of a list and instead triggers a callback for
each range.

Signed-off-by: David Hildenbrand <david@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20210903155514.44772-10-david@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
2021-09-06 16:24:05 +02:00
..
3270-ccw.c s390x/css: Refactor IRB construction 2021-06-21 08:48:21 +02:00
ap-bridge.c
ap-device.c
ccw-device.c hw/s390x/ccw: Register qbus type in abstract TYPE_CCW_DEVICE parent 2021-05-20 14:19:30 +02:00
ccw-device.h hw/s390x/ccw: Register qbus type in abstract TYPE_CCW_DEVICE parent 2021-05-20 14:19:30 +02:00
css-bridge.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
css.c vfio-ccw: forward halt/clear errors 2021-09-06 16:22:54 +02:00
event-facility.c
ipl.c error: Use error_fatal to simplify obvious fatal errors (again) 2021-08-26 17:15:28 +02:00
ipl.h
Kconfig
meson.build hw/s390x: only build tod-tcg from the CONFIG_TCG build 2021-07-07 14:01:54 +02:00
pv.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
s390-ccw.c s390x/css: Add passthrough IRB 2021-06-21 08:48:21 +02:00
s390-pci-bus.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
s390-pci-inst.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
s390-pci-vfio.c s390x/pci: Add missing initialization for g_autofree variables 2021-03-15 15:47:18 +01:00
s390-skeys-kvm.c
s390-skeys.c hw/s390x/s390-skeys: use memory mapping to detect which storage keys to migrate 2021-09-06 16:24:05 +02:00
s390-stattrib-kvm.c target/s390x: move kvm files into kvm/ 2021-07-07 14:01:59 +02:00
s390-stattrib.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
s390-virtio-ccw.c hw: Add compat machines for 6.2 2021-09-01 11:08:16 +01:00
s390-virtio-hcall.c
s390-virtio-hcall.h
sclp.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
sclpcpu.c Do not include cpu.h if it's not really necessary 2021-05-02 17:24:51 +02:00
sclpquiesce.c
tod-kvm.c target/s390x: move kvm files into kvm/ 2021-07-07 14:01:59 +02:00
tod-tcg.c target/s390x: start moving TCG-only code to tcg/ 2021-07-07 14:01:56 +02:00
tod.c hw/s390x: tod: make explicit checks for accelerators when initializing 2021-07-07 14:01:54 +02:00
trace-events docs: fix references to docs/devel/tracing.rst 2021-06-02 06:51:09 +02:00
trace.h
vhost-user-fs-ccw.c
vhost-vsock-ccw.c
virtio-ccw-9p.c
virtio-ccw-balloon.c
virtio-ccw-blk.c
virtio-ccw-crypto.c
virtio-ccw-gpu.c modules: add s390x module annotations 2021-07-09 18:20:27 +02:00
virtio-ccw-input.c
virtio-ccw-net.c
virtio-ccw-rng.c
virtio-ccw-scsi.c
virtio-ccw-serial.c
virtio-ccw.c virtio: disable ioeventfd for record/replay 2021-07-02 10:20:13 -04:00
virtio-ccw.h s390x: add have_virtio_ccw 2021-03-26 09:33:50 +01:00