[PATCH v1 0/2] udmabuf: Add back support for mapping hugetlb pages
Peter Xu
peterx at redhat.com
Fri Jun 23 17:28:24 UTC 2023
On Fri, Jun 23, 2023 at 01:37:58PM -0300, Jason Gunthorpe wrote:
> On Fri, Jun 23, 2023 at 12:35:45PM -0400, Peter Xu wrote:
>
> > It seems the previous concern on using gup was majorly fork(), if this is it:
> >
> > https://patchwork.freedesktop.org/patch/210992/?series=39879&rev=2#comment_414213
>
> Fork and GUP have been fixed since that comment anyhow there is no
> longer a problem using GUP and fork together.
Ah, I read it previously as a requirement that the child will also be able
the see the same / coherent page when manipulating the dmabuf later after
fork(), e.g., the udmabuf can be created before fork().
>
> > Could it also be guarded by just making sure the pages are MAP_SHARED when
> > creating the udmabuf, if fork() is a requirement of the feature?
>
> Also a resaonable thing to do
>
> > For instance, what if the userapp just punchs a hole in the shmem/hugetlbfs
> > file after creating the udmabuf (I see that F_SEAL_SHRINK is required, but
> > at least not F_SEAL_WRITE with current impl), and fault a new page into the
> > page cache?
>
> It becomes incoherent just like all other GUP users if userspace
> explicitly manipulates the VMAs. It is no different to what happens
> with VFIO, qemu should treat this memory the same as it does for VFIO
> memory.
Agreed.
--
Peter Xu
More information about the dri-devel
mailing list