On Wed, 22 Jan 2025 at 22:10, David Hildenbrand <david@xxxxxxxxxx> wrote: > > On 22.01.25 16:27, Fuad Tabba wrote: > > Make kvm_(read|/write)_guest_page() capable of accessing guest > > memory for slots that don't have a userspace address, but only if > > the memory is mappable, which also indicates that it is > > accessible by the host. > > Interesting. So far my assumption was that, for shared memory, user > space would simply mmap() guest_memdd and pass it as userspace address > to the same memslot that has this guest_memfd for private memory. > > Wouldn't that be easier in the first shot? (IOW, not require this patch > with the cost of faulting the shared page into the page table on access) This has to do more with the ABI I had for pkvm and shared memory implementations, in which you don't need to specify the userspace address for memory in a guestmem memslot. The issue is there is no obvious address to map it to. This would be the case in kvm:arm64 for tracking paravirtualized time, which the userspace doesn't necessarily need to interact with, but kvm does. That said, we could always have a userspace address dedicated to mapping shared locations, and use that address when the necessity arises. Or we could always require that memslots have a userspace address, even if not used. I don't really have a strong preference. Thanks, /fuad > -- > Cheers, > > David / dhildenb >