On Thu, Jan 23, 2020 at 11:34 PM Aneesh Kumar K.V
<[email protected]> wrote:
>
> On 1/24/20 11:27 AM, Dan Williams wrote:
> > On Mon, Jan 20, 2020 at 6:08 AM Aneesh Kumar K.V
> >
>
> ....
>
> >>
> >> +unsigned long arch_namespace_map_size(void)
> >> +{
> >> +       return PAGE_SIZE;
> >> +}
> >> +EXPORT_SYMBOL_GPL(arch_namespace_map_size);
> >> +
> >> +
> >>   static void __cpa_flush_all(void *arg)
> >>   {
> >>          unsigned long cache = (unsigned long)arg;
> >> diff --git a/include/linux/libnvdimm.h b/include/linux/libnvdimm.h
> >> index 9df091bd30ba..a3476dbd2656 100644
> >> --- a/include/linux/libnvdimm.h
> >> +++ b/include/linux/libnvdimm.h
> >> @@ -284,4 +284,5 @@ static inline void arch_invalidate_pmem(void *addr, 
> >> size_t size)
> >>   }
> >>   #endif
> >>
> >> +unsigned long arch_namespace_map_size(void);
> >
> > This property is more generic than the nvdimm namespace mapping size,
> > it's more the fundamental remap granularity that the architecture
> > supports. So I would expect this to be defined in core header files.
> > Something like:
> >
> > diff --git a/include/linux/io.h b/include/linux/io.h
> > index a59834bc0a11..58b3b2091dbb 100644
> > --- a/include/linux/io.h
> > +++ b/include/linux/io.h
> > @@ -155,6 +155,13 @@ enum {
> >   void *memremap(resource_size_t offset, size_t size, unsigned long flags);
> >   void memunmap(void *addr);
> >
> > +#ifndef memremap_min_align
> > +static inline unsigned int memremap_min_align(void)
> > +{
> > +       return PAGE_SIZE;
> > +}
> > +#endif
> > +
>
>
> Should that be memremap_pages_min_align()?

No, and on second look it needs to be a common value that results in
properly aligned / sized namespaces across architectures.

What would it take for Power to make it's minimum mapping granularity
SUBSECTION_SIZE? The minute that the minimum alignment changes across
architectures we lose compatibility.

The namespaces need to be sized such that the mode can be changed freely.
_______________________________________________
Linux-nvdimm mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to