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]
