On Mon, 18 Feb 2019 15:41:07 +0000 "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx> wrote: > * Cornelia Huck (cohuck@xxxxxxxxxx) wrote: > > > >> We can of course switch the order of mappings > > > >> > > > >> [0x000000000000000 ] > > > >> ... Memory region containing RAM > > > >> [ram_size ] > > > >> ... Memory region for memory devices (virtio-pmem, virtio-mem ...) > > > >> [maxram_size - ram_size ] > > > >> ... Memory region for e.g. special PCI/CCW devices > > > >> [ TBD] > > > >> > > > >> We can size TBD in a way that we e.g. max out the current page table > > > >> size before having to switch to more levels. > > > > > > > > Yes, that's fine to set some upper limit; you've just got to make sure > > > > that the hypervisor knows where it can put stuff and if the guest > > > > does PCI that it knows where it's allowed to put stuff and as long > > > > as the two don't overlap everyone is happy. > > > > Hm... is that an issue for pci? Do we need to care, as s390 uses > > special instructions anyway? Or do we want to avoid going through them, > > so that the guest can use normal read/write? > > That depends. > The stuff we use for virtio-fs we need the shared region to be > accessible by the guest via normal instructions because we're using for > DAX. For PCI you might be able to avoid it for most other PCI cases. So, - virtio-fs regions need to be accessible like normal memory, so they need to show up in the region labeled 'TBD' above (it would fine to communicate the 'where' through pci structures) - pci uses special instructions on s390, so we probably don't need to care about clashes?