[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [RFC PATCH 0/1] vhost-user: Add SHMEM_MAP/UNMAP requests
From: |
Stefan Hajnoczi |
Subject: |
Re: [RFC PATCH 0/1] vhost-user: Add SHMEM_MAP/UNMAP requests |
Date: |
Tue, 4 Jun 2024 14:16:26 -0400 |
On Thu, May 30, 2024 at 05:22:22PM +0200, Albert Esteve wrote:
> Hi all,
>
> This is an early attempt to have backends
> support dynamic fd mapping into shared
> memory regions. As such, there are a few
> things that need settling, so I wanted to
> post this first to have some early feedback.
>
> The usecase for this is, e.g., to support
> vhost-user-gpu RESOURCE_BLOB operations,
> or DAX Window request for virtio-fs. In
> general, any operation where a backend
> would need to mmap an fd to a shared
> memory so that the guest can access it.
I wanted to mention that this sentence confuses me because:
- The frontend will mmap an fd into the guest's memory space so that a
VIRTIO Shared Memory Region is exposed to the guest. The backend
requests the frontend to perform this operation. The backend does not
invoke mmap itself.
- "Shared memory" is ambiguous. Please call it VIRTIO Shared Memory
Region to differentiate from vhost-user shared memory tables/regions.
> The request will be processed by the VMM,
> that will, in turn, trigger a mmap with
> the instructed parameters (i.e., shmid,
> shm_offset, fd_offset, fd, lenght).
>
> As there are already a couple devices
> that could benefit of such a feature,
> and more could require it in the future,
> my intention was to make it generic.
>
> To that end, I declared the shared
> memory region list in `VirtIODevice`.
> I could add a couple commodity
> functions to add new regions to the list,
> so that the devices can use them. But
> I wanted to gather some feedback before
> refining it further, as I am probably
> missing some required steps/or security
> concerns that I am not taking into account.
>
> Albert Esteve (1):
> vhost-user: add shmem mmap request
>
> docs/interop/vhost-user.rst | 23 ++++++++
> hw/virtio/vhost-user.c | 106 ++++++++++++++++++++++++++++++++++++
> hw/virtio/virtio.c | 2 +
> include/hw/virtio/virtio.h | 3 +
> 4 files changed, 134 insertions(+)
>
> --
> 2.44.0
>
signature.asc
Description: PGP signature
- Re: [RFC PATCH 0/1] vhost-user: Add SHMEM_MAP/UNMAP requests,
Stefan Hajnoczi <=