Re: [PATCH 03/16] mm: add vma_desc_size(), vma_desc_pages() helpers

Jason Gunthorpe
2025-09-08T13:32:28Z

On Mon, Sep 08, 2025 at 02:12:00PM +0100, Lorenzo Stoakes wrote:
> On Mon, Sep 08, 2025 at 09:51:01AM -0300, Jason Gunthorpe wrote:
> > On Mon, Sep 08, 2025 at 12:10:34PM +0100, Lorenzo Stoakes wrote:
> > > static int secretmem_mmap_prepare(struct vm_area_desc *desc)
> > > {
> > > - const unsigned long len = desc->end - desc->start;
> > > + const unsigned long len = vma_desc_size(desc);
> > >
> > > if ((desc->vm_flags & (VM_SHARED | VM_MAYSHARE)) == 0)
> > > return -EINVAL;
> >
> > I wonder if we should have some helper for this shared check too, it
> > is a bit tricky with the two flags. Forced-shared checks are pretty
> > common.
>
> Sure can add.
>
> >
> > vma_desc_must_be_shared(desc) ?
>
> Maybe _could_be_shared()?

It is not could, it is must.

Perhaps

!vma_desc_cowable()

Is what many drivers are really trying to assert.

Jason