arm64: Add __init section marker to some functions
PATCH v2 1/1 arm64: Add __init section marker to some functions
They are not needed after booting, so mark them as __init to move them to the .init section.
Signed-off-by Jisheng Zhang <[email protected]>
---
Since v1:
- add __init section mark to __vdso_init() and __aarch32_alloc_vdso_pages()
arch/arm64/include/asm/ptdump.h | 2 +- arch/arm64/kernel/vdso.c | 4 ++-- arch/arm64/mm/ptdump.c | 4 ++-- arch/arm64/mm/ptdump_debugfs.c | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-)
arch/arm64/include/asm/ptdump.h +1 -1
@@ -23,7 +23,7 @@ struct ptdump_info {void ptdump_walk (struct seq_file *s,struct ptdump_info *info);#ifdef CONFIG_PTDUMP_DEBUGFS -void ptdump_debugfs_register (struct ptdump_info *info,const char *name); +void __init ptdump_debugfs_register (struct ptdump_info *info,const char *name);#else static inline void ptdump_debugfs_register (struct ptdump_info *info,const char *name) { }
arch/arm64/kernel/vdso.c +2 -2
@@ -86,7 +86,7 @@ static int vdso_mremap(const struct vm_special_mapping *sm,return 0 ; } -static int __vdso_init (enum vdso_abi abi) +static int __init __vdso_init (enum vdso_abi abi) {int i;struct page **vdso_pagelist;
@@ -326,7 +326,7 @@ static int aarch32_alloc_sigpage(void)return 0 ; } -static int __aarch32_alloc_vdso_pages (void ) +static int __init __aarch32_alloc_vdso_pages (void ) {if (!IS_ENABLED (CONFIG_COMPAT_VDSO ))
arch/arm64/mm/ptdump.c +2 -2
@@ -337,7 +337,7 @@ void ptdump_walk(struct seq_file *s, struct ptdump_info *info)ptdump_walk_pgd (&st.ptdump, info->mm,NULL ); } -static void ptdump_initialize (void ) +static void __init ptdump_initialize (void ) {unsigned i, j;
@@ -381,7 +381,7 @@ void ptdump_check_wx(void)pr_info ("Checked W+X mappings: passed, no W+X pages found\n" ); } -static int ptdump_init (void ) +static int __init ptdump_init (void ) { address_markers[PAGE_END_NR ].start_address =PAGE_END ;#if defined(CONFIG_KASAN_GENERIC ) || defined(CONFIG_KASAN_SW_TAGS )
arch/arm64/mm/ptdump_debugfs.c +1 -1
@@ -16,7 +16,7 @@ static int ptdump_show(struct seq_file *m, void *v) }DEFINE_SHOW_ATTRIBUTE (ptdump); -void ptdump_debugfs_register (struct ptdump_info *info,const char *name) +void __init ptdump_debugfs_register (struct ptdump_info *info,const char *name) {debugfs_create_file (name,0400 ,NULL , info, &ptdump_fops); }
Signature · 1 line
2.31.0
Quoted 4 lines · Jisheng Zhang
They are not needed after booting, so mark them as
__initto move them to the .init section.Signed-off-by Jisheng Zhang <[email protected]>
Reviewed-by Steven Price <[email protected]>
Quoted 81 lines
---
Since v1:
- add__initsection mark to__vdso_init()and__aarch32_alloc_vdso_pages()arch/arm64/include/asm/ptdump.h | 2 +- arch/arm64/kernel/vdso.c | 4 ++-- arch/arm64/mm/ptdump.c | 4 ++-- arch/arm64/mm/ptdump_debugfs.c | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-)arch/arm64/include/asm/ptdump.h +1
-1@@ -23,7 +23,7 @@ struct ptdump_info {void ptdump_walk (struct seq_file *s,struct ptdump_info *info);#ifdef CONFIG_PTDUMP_DEBUGFS -void ptdump_debugfs_register (struct ptdump_info *info,const char *name); +void __init ptdump_debugfs_register (struct ptdump_info *info,const char *name);#else static inline void ptdump_debugfs_register (struct ptdump_info *info,const char *name) { }arch/arm64/kernel/vdso.c +2
-2@@ -86,7 +86,7 @@ static int vdso_mremap(const struct vm_special_mapping *sm,return 0 ; } -static int __vdso_init (enum vdso_abi abi) +static int __init __vdso_init (enum vdso_abi abi) {int i;struct page **vdso_pagelist;@@ -326,7 +326,7 @@ static int aarch32_alloc_sigpage(void)return 0 ; } -static int __aarch32_alloc_vdso_pages (void ) +static int __init __aarch32_alloc_vdso_pages (void ) {if (!IS_ENABLED (CONFIG_COMPAT_VDSO ))arch/arm64/mm/ptdump.c +2
-2@@ -337,7 +337,7 @@ void ptdump_walk(struct seq_file *s, struct ptdump_info *info)ptdump_walk_pgd (&st.ptdump, info->mm,NULL ); } -static void ptdump_initialize (void ) +static void __init ptdump_initialize (void ) {unsigned i, j;@@ -381,7 +381,7 @@ void ptdump_check_wx(void)pr_info ("Checked W+X mappings: passed, no W+X pages found\n" ); } -static int ptdump_init (void ) +static int __init ptdump_init (void ) { address_markers[PAGE_END_NR ].start_address =PAGE_END ;#if defined(CONFIG_KASAN_GENERIC ) || defined(CONFIG_KASAN_SW_TAGS )arch/arm64/mm/ptdump_debugfs.c +1
-1@@ -16,7 +16,7 @@ static int ptdump_show(struct seq_file *m, void *v) }DEFINE_SHOW_ATTRIBUTE (ptdump); -void ptdump_debugfs_register (struct ptdump_info *info,const char *name) +void __init ptdump_debugfs_register (struct ptdump_info *info,const char *name) {debugfs_create_file (name,0400 ,NULL , info, &ptdump_fops); }
Quoted 2 lines · Jisheng Zhang
They are not needed after booting, so mark them as
__initto move them to the .init section.
Applied to arm64 (for-next/misc), thanks!
[1/1] arm64: Add __init section marker to some functions
https://git.kernel.org/arm64/c/a7dcf58ae5d2
Signature · 1 line
Catalin