Re: [PATCH RFC V2 12/17] memremap: Add zone device access protection

From: Peter Zijlstra
Date: Mon Jul 20 2020 - 05:17:00 EST


On Fri, Jul 17, 2020 at 10:06:50PM -0700, Ira Weiny wrote:
> On Fri, Jul 17, 2020 at 11:10:53AM +0200, Peter Zijlstra wrote:
> > On Fri, Jul 17, 2020 at 12:20:51AM -0700, ira.weiny@xxxxxxxxx wrote:
> > > +static pgprot_t dev_protection_enable_get(struct dev_pagemap *pgmap, pgprot_t prot)
> > > +{
> > > + if (pgmap->flags & PGMAP_PROT_ENABLED && dev_page_pkey != PKEY_INVALID) {
> > > + pgprotval_t val = pgprot_val(prot);
> > > +
> > > + static_branch_inc(&dev_protection_static_key);
> > > + prot = __pgprot(val | _PAGE_PKEY(dev_page_pkey));
> > > + }
> > > + return prot;
> > > +}
> >
> > Every other pgprot modifying function is called pgprot_*(), although I
> > suppose we have the exceptions phys_mem_access_prot() and dma_pgprot().
>
> Yea... this function kind of morphed. The issue is that this is also a 'get'
> with a corresponding 'put'. So I'm at a loss for what makes sense between the
> 2 functions.
>
> >
> > How about we call this one devm_pgprot() ?
>
> Dan Williams mentioned to me that the devm is not an appropriate prefix. Thus
> the 'dev' prefix instead.
>
> How about dev_pgprot_{get,put}()?

works for me, thanks!