On Tue, 03 Feb 2015 16:22:32 +0100
Paolo Bonzini <pbonz...@redhat.com> wrote:

> 
> 
> On 03/02/2015 16:16, Thomas Huth wrote:
> > Actually, I'd prefer to keep the "virtual" in the defines for the type
> > of operation below: When it comes to s390 storage keys, we likely might
> > need some calls for reading and writing to physical memory, too. Then
> > we could simply extend this ioctl instead of inventing a new one.
> 
> Can you explain why it is necessary to read/write physical addresses
> from user space?  In the case of QEMU, I'm worried that you would have
> to invent your own memory read/write APIs that are different from
> everything else.
> 
> On real s390 zPCI, does bus-master DMA update storage keys?

Ah, I was not thinking about bus-mastering/DMA here: AFAIK there are
some CPU instructions that access a parameter block in physical memory,
for example the SCLP instruction (see hw/s390x/sclp.c) - it's already
doing a cpu_physical_memory_read and ..._write for the parameters.
However, I haven't checked yet whether it is also supposed to touch
the storage keys, so if not, we also might be fine without the ioctls
for reading/writing to physical memory.

> >> Not really true, as you don't check it.  So "It is not used by KVM with
> >> the currently defined set of flags" is a better explanation.
> > 
> > ok ... and maybe add "should be set to zero" ?
> 
> If you don't check it, it is misleading to document this.

True... so I'll omit that.

 Thomas


Reply via email to