Message ID | 20241016122424.1655560-2-rppt@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | x86/module: use large ROX pages for text allocations | expand |
On Wed, Oct 16, 2024 at 03:24:17PM +0300, Mike Rapoport wrote: > From: "Mike Rapoport (Microsoft)" <rppt@kernel.org> > > There are a couple of declarations that depend on CONFIG_MMU in > include/linux/vmalloc.h spread all over the file. > > Group them all together to improve code readability. > > No functional changes. > > Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org> > Reviewed-by: Christoph Hellwig <hch@lst.de> > --- > include/linux/vmalloc.h | 60 +++++++++++++++++------------------------ > 1 file changed, 24 insertions(+), 36 deletions(-) > > diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h > index ad2ce7a6ab7a..27408f21e501 100644 > --- a/include/linux/vmalloc.h > +++ b/include/linux/vmalloc.h > @@ -134,12 +134,6 @@ extern void vm_unmap_ram(const void *mem, unsigned int count); > extern void *vm_map_ram(struct page **pages, unsigned int count, int node); > extern void vm_unmap_aliases(void); > > -#ifdef CONFIG_MMU > -extern unsigned long vmalloc_nr_pages(void); > -#else > -static inline unsigned long vmalloc_nr_pages(void) { return 0; } > -#endif > - > extern void *vmalloc_noprof(unsigned long size) __alloc_size(1); > #define vmalloc(...) alloc_hooks(vmalloc_noprof(__VA_ARGS__)) > > @@ -266,12 +260,29 @@ static inline bool is_vm_area_hugepages(const void *addr) > #endif > } > > +/* for /proc/kcore */ > +long vread_iter(struct iov_iter *iter, const char *addr, size_t count); > + > +/* > + * Internals. Don't use.. > + */ > +__init void vm_area_add_early(struct vm_struct *vm); > +__init void vm_area_register_early(struct vm_struct *vm, size_t align); > + > +int register_vmap_purge_notifier(struct notifier_block *nb); > +int unregister_vmap_purge_notifier(struct notifier_block *nb); > + > #ifdef CONFIG_MMU > +#define VMALLOC_TOTAL (VMALLOC_END - VMALLOC_START) > + > +unsigned long vmalloc_nr_pages(void); > + > int vm_area_map_pages(struct vm_struct *area, unsigned long start, > unsigned long end, struct page **pages); > void vm_area_unmap_pages(struct vm_struct *area, unsigned long start, > unsigned long end); > void vunmap_range(unsigned long addr, unsigned long end); > + > static inline void set_vm_flush_reset_perms(void *addr) > { > struct vm_struct *vm = find_vm_area(addr); > @@ -279,24 +290,14 @@ static inline void set_vm_flush_reset_perms(void *addr) > if (vm) > vm->flags |= VM_FLUSH_RESET_PERMS; > } > +#else /* !CONFIG_MMU */ > +#define VMALLOC_TOTAL 0UL > > -#else > -static inline void set_vm_flush_reset_perms(void *addr) > -{ > -} > -#endif > - > -/* for /proc/kcore */ > -extern long vread_iter(struct iov_iter *iter, const char *addr, size_t count); > - > -/* > - * Internals. Don't use.. > - */ > -extern __init void vm_area_add_early(struct vm_struct *vm); > -extern __init void vm_area_register_early(struct vm_struct *vm, size_t align); > +static inline unsigned long vmalloc_nr_pages(void) { return 0; } > +static inline void set_vm_flush_reset_perms(void *addr) {} > +#endif /* CONFIG_MMU */ > > -#ifdef CONFIG_SMP > -# ifdef CONFIG_MMU > +#if defined(CONFIG_MMU) && defined(CONFIG_SMP) > struct vm_struct **pcpu_get_vm_areas(const unsigned long *offsets, > const size_t *sizes, int nr_vms, > size_t align); > @@ -311,22 +312,9 @@ pcpu_get_vm_areas(const unsigned long *offsets, > return NULL; > } > > -static inline void > -pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms) > -{ > -} > -# endif > -#endif > - > -#ifdef CONFIG_MMU > -#define VMALLOC_TOTAL (VMALLOC_END - VMALLOC_START) > -#else > -#define VMALLOC_TOTAL 0UL > +static inline void pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms) {} > #endif > > -int register_vmap_purge_notifier(struct notifier_block *nb); > -int unregister_vmap_purge_notifier(struct notifier_block *nb); > - > #if defined(CONFIG_MMU) && defined(CONFIG_PRINTK) > bool vmalloc_dump_obj(void *object); > #else > -- > 2.43.0 > Reviewed-by: Uladzislau Rezki (Sony) <urezki@gmail.com> -- Uladzislau Rezki
On Wed, Oct 16, 2024 at 03:24:17PM +0300, Mike Rapoport wrote: > From: "Mike Rapoport (Microsoft)" <rppt@kernel.org> > > There are a couple of declarations that depend on CONFIG_MMU in > include/linux/vmalloc.h spread all over the file. > > Group them all together to improve code readability. > > No functional changes. > > Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org> > Reviewed-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Luis Chamberlain <mcgrof@kernel.org> Luis
diff --git a/include/linux/vmalloc.h b/include/linux/vmalloc.h index ad2ce7a6ab7a..27408f21e501 100644 --- a/include/linux/vmalloc.h +++ b/include/linux/vmalloc.h @@ -134,12 +134,6 @@ extern void vm_unmap_ram(const void *mem, unsigned int count); extern void *vm_map_ram(struct page **pages, unsigned int count, int node); extern void vm_unmap_aliases(void); -#ifdef CONFIG_MMU -extern unsigned long vmalloc_nr_pages(void); -#else -static inline unsigned long vmalloc_nr_pages(void) { return 0; } -#endif - extern void *vmalloc_noprof(unsigned long size) __alloc_size(1); #define vmalloc(...) alloc_hooks(vmalloc_noprof(__VA_ARGS__)) @@ -266,12 +260,29 @@ static inline bool is_vm_area_hugepages(const void *addr) #endif } +/* for /proc/kcore */ +long vread_iter(struct iov_iter *iter, const char *addr, size_t count); + +/* + * Internals. Don't use.. + */ +__init void vm_area_add_early(struct vm_struct *vm); +__init void vm_area_register_early(struct vm_struct *vm, size_t align); + +int register_vmap_purge_notifier(struct notifier_block *nb); +int unregister_vmap_purge_notifier(struct notifier_block *nb); + #ifdef CONFIG_MMU +#define VMALLOC_TOTAL (VMALLOC_END - VMALLOC_START) + +unsigned long vmalloc_nr_pages(void); + int vm_area_map_pages(struct vm_struct *area, unsigned long start, unsigned long end, struct page **pages); void vm_area_unmap_pages(struct vm_struct *area, unsigned long start, unsigned long end); void vunmap_range(unsigned long addr, unsigned long end); + static inline void set_vm_flush_reset_perms(void *addr) { struct vm_struct *vm = find_vm_area(addr); @@ -279,24 +290,14 @@ static inline void set_vm_flush_reset_perms(void *addr) if (vm) vm->flags |= VM_FLUSH_RESET_PERMS; } +#else /* !CONFIG_MMU */ +#define VMALLOC_TOTAL 0UL -#else -static inline void set_vm_flush_reset_perms(void *addr) -{ -} -#endif - -/* for /proc/kcore */ -extern long vread_iter(struct iov_iter *iter, const char *addr, size_t count); - -/* - * Internals. Don't use.. - */ -extern __init void vm_area_add_early(struct vm_struct *vm); -extern __init void vm_area_register_early(struct vm_struct *vm, size_t align); +static inline unsigned long vmalloc_nr_pages(void) { return 0; } +static inline void set_vm_flush_reset_perms(void *addr) {} +#endif /* CONFIG_MMU */ -#ifdef CONFIG_SMP -# ifdef CONFIG_MMU +#if defined(CONFIG_MMU) && defined(CONFIG_SMP) struct vm_struct **pcpu_get_vm_areas(const unsigned long *offsets, const size_t *sizes, int nr_vms, size_t align); @@ -311,22 +312,9 @@ pcpu_get_vm_areas(const unsigned long *offsets, return NULL; } -static inline void -pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms) -{ -} -# endif -#endif - -#ifdef CONFIG_MMU -#define VMALLOC_TOTAL (VMALLOC_END - VMALLOC_START) -#else -#define VMALLOC_TOTAL 0UL +static inline void pcpu_free_vm_areas(struct vm_struct **vms, int nr_vms) {} #endif -int register_vmap_purge_notifier(struct notifier_block *nb); -int unregister_vmap_purge_notifier(struct notifier_block *nb); - #if defined(CONFIG_MMU) && defined(CONFIG_PRINTK) bool vmalloc_dump_obj(void *object); #else