On Mon, Aug 31, 2020 at 12:19:07PM +0200, Roger Pau Monné wrote: > On Thu, Aug 20, 2020 at 01:37:41PM +0200, Roger Pau Monné wrote: > > On Tue, Aug 11, 2020 at 11:07:36PM +0200, David Hildenbrand wrote: > > > On 11.08.20 11:44, Roger Pau Monne wrote: > > > > This is in preparation for the logic behind MEMORY_DEVICE_DEVDAX also > > > > being used by non DAX devices. > > > > > > > > No functional change intended. > > > > > > > > Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx> Dan is out on leave so I'll chime in. I can't really justify keeping this as DEVDAX if there is another user who needs the same type of mapping. Sorry for the delay. Reviewed-by: Ira Weiny <ira.weiny@xxxxxxxxx> > > > > --- > > > > Cc: Dan Williams <dan.j.williams@xxxxxxxxx> > > > > Cc: Vishal Verma <vishal.l.verma@xxxxxxxxx> > > > > Cc: Dave Jiang <dave.jiang@xxxxxxxxx> > > > > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> > > > > Cc: Jason Gunthorpe <jgg@xxxxxxxx> > > > > Cc: Ira Weiny <ira.weiny@xxxxxxxxx> > > > > Cc: "Aneesh Kumar K.V" <aneesh.kumar@xxxxxxxxxxxxx> > > > > Cc: Johannes Thumshirn <jthumshirn@xxxxxxx> > > > > Cc: Logan Gunthorpe <logang@xxxxxxxxxxxx> > > > > Cc: linux-nvdimm@xxxxxxxxxxxx > > > > Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx > > > > Cc: linux-mm@xxxxxxxxx > > > > --- > > > > drivers/dax/device.c | 2 +- > > > > include/linux/memremap.h | 9 ++++----- > > > > mm/memremap.c | 2 +- > > > > 3 files changed, 6 insertions(+), 7 deletions(-) > > > > > > > > diff --git a/drivers/dax/device.c b/drivers/dax/device.c > > > > index 4c0af2eb7e19..1e89513f3c59 100644 > > > > --- a/drivers/dax/device.c > > > > +++ b/drivers/dax/device.c > > > > @@ -429,7 +429,7 @@ int dev_dax_probe(struct device *dev) > > > > return -EBUSY; > > > > } > > > > > > > > - dev_dax->pgmap.type = MEMORY_DEVICE_DEVDAX; > > > > + dev_dax->pgmap.type = MEMORY_DEVICE_GENERIC; > > > > addr = devm_memremap_pages(dev, &dev_dax->pgmap); > > > > if (IS_ERR(addr)) > > > > return PTR_ERR(addr); > > > > diff --git a/include/linux/memremap.h b/include/linux/memremap.h > > > > index 5f5b2df06e61..e5862746751b 100644 > > > > --- a/include/linux/memremap.h > > > > +++ b/include/linux/memremap.h > > > > @@ -46,11 +46,10 @@ struct vmem_altmap { > > > > * wakeup is used to coordinate physical address space management (ex: > > > > * fs truncate/hole punch) vs pinned pages (ex: device dma). > > > > * > > > > - * MEMORY_DEVICE_DEVDAX: > > > > + * MEMORY_DEVICE_GENERIC: > > > > * Host memory that has similar access semantics as System RAM i.e. DMA > > > > - * coherent and supports page pinning. In contrast to > > > > - * MEMORY_DEVICE_FS_DAX, this memory is access via a device-dax > > > > - * character device. > > > > + * coherent and supports page pinning. This is for example used by DAX devices > > > > + * that expose memory using a character device. > > > > * > > > > * MEMORY_DEVICE_PCI_P2PDMA: > > > > * Device memory residing in a PCI BAR intended for use with Peer-to-Peer > > > > @@ -60,7 +59,7 @@ enum memory_type { > > > > /* 0 is reserved to catch uninitialized type fields */ > > > > MEMORY_DEVICE_PRIVATE = 1, > > > > MEMORY_DEVICE_FS_DAX, > > > > - MEMORY_DEVICE_DEVDAX, > > > > + MEMORY_DEVICE_GENERIC, > > > > MEMORY_DEVICE_PCI_P2PDMA, > > > > }; > > > > > > > > diff --git a/mm/memremap.c b/mm/memremap.c > > > > index 03e38b7a38f1..006dace60b1a 100644 > > > > --- a/mm/memremap.c > > > > +++ b/mm/memremap.c > > > > @@ -216,7 +216,7 @@ void *memremap_pages(struct dev_pagemap *pgmap, int nid) > > > > return ERR_PTR(-EINVAL); > > > > } > > > > break; > > > > - case MEMORY_DEVICE_DEVDAX: > > > > + case MEMORY_DEVICE_GENERIC: > > > > need_devmap_managed = false; > > > > break; > > > > case MEMORY_DEVICE_PCI_P2PDMA: > > > > > > > > > > No strong opinion (@Dan?), I do wonder if a separate type would make sense. > > > > Gentle ping. > > Sorry to ping again, but I would rather get this out of my queue if > possible, seeing as the other patch is OK to go in but depends on this > one going in first. > > Thanks, Roger.