Re: [RFC PATCH 0/5] madvise MADV_DOEXEC

From: Jason Gunthorpe
Date: Fri Jul 31 2020 - 13:48:44 EST


On Fri, Jul 31, 2020 at 01:15:34PM -0400, Steven Sistare wrote:
> On 7/31/2020 12:56 PM, Jason Gunthorpe wrote:
> > On Fri, Jul 31, 2020 at 12:11:52PM -0400, Steven Sistare wrote:
> >>> Your preservation-across-exec use-case might or might not need the
> >>> VMA to be mapped at the same address.
> >>
> >> It does. qemu registers memory with vfio which remembers the va's in kernel
> >> metadata for the device.
> >
> > Once the memory is registered with vfio the VA doesn't matter, vfio
> > will keep the iommu pointing at the same physical pages no matter
> > where they are mapped.
>
> Yes, but there are other code paths that compute and use offsets between va and the
> base va. Mapping at a different va in the new process breaks vfio; I have tried it.

Maybe you could fix vfio instead of having this adventure, if vfio is
the only motivation.

Jason