From: Christophe Leroy <christophe.leroy@csgroup.eu> To: Benjamin Herrenschmidt <benh@kernel.crashing.org>, Paul Mackerras <paulus@samba.org>, Michael Ellerman <mpe@ellerman.id.au> Cc: linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Subject: [PATCH v1 07/30] powerpc/vdso: Remove unnecessary ifdefs in vdso_pagelist initialization Date: Sun, 27 Sep 2020 09:16:24 +0000 (UTC) [thread overview] Message-ID: <f9333432e329b1fcbbbf846cb1cd4a1c4127a60b.1601197618.git.christophe.leroy@csgroup.eu> (raw) In-Reply-To: <cover.1601197618.git.christophe.leroy@csgroup.eu> No need of all those #ifdefs around the pagelist initialisation, use IS_ENABLED(), GCC will kick out unused static variables. Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> --- arch/powerpc/kernel/vdso.c | 31 ++++++------------------------- 1 file changed, 6 insertions(+), 25 deletions(-) diff --git a/arch/powerpc/kernel/vdso.c b/arch/powerpc/kernel/vdso.c index d129d7ee006d..a24f6a583fac 100644 --- a/arch/powerpc/kernel/vdso.c +++ b/arch/powerpc/kernel/vdso.c @@ -53,15 +53,12 @@ static struct page **vdso32_pagelist; unsigned long vdso32_sigtramp; unsigned long vdso32_rt_sigtramp; -#ifdef CONFIG_VDSO32 extern char vdso32_start, vdso32_end; -#endif - -#ifdef CONFIG_PPC64 extern char vdso64_start, vdso64_end; static void *vdso64_kbase = &vdso64_start; static unsigned int vdso64_pages; static struct page **vdso64_pagelist; +#ifdef CONFIG_PPC64 unsigned long vdso64_rt_sigtramp; #endif /* CONFIG_PPC64 */ @@ -136,7 +133,6 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) if (!vdso_ready) return 0; -#ifdef CONFIG_PPC64 if (is_32bit_task()) { vdso_pagelist = vdso32_pagelist; vdso_pages = vdso32_pages; @@ -151,11 +147,6 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) */ vdso_base = 0; } -#else - vdso_pagelist = vdso32_pagelist; - vdso_pages = vdso32_pages; - vdso_base = VDSO32_MBASE; -#endif current->mm->context.vdso_base = 0; @@ -614,9 +605,7 @@ static __init int vdso_setup(void) struct lib64_elfinfo v64; v32.hdr = vdso32_kbase; -#ifdef CONFIG_PPC64 v64.hdr = vdso64_kbase; -#endif if (vdso_do_find_sections(&v32, &v64)) return -1; @@ -722,16 +711,14 @@ static int __init vdso_init(void) vdso_data->icache_block_size = ppc64_caches.l1i.block_size; vdso_data->dcache_log_block_size = ppc64_caches.l1d.log_block_size; vdso_data->icache_log_block_size = ppc64_caches.l1i.log_block_size; +#endif /* CONFIG_PPC64 */ /* * Calculate the size of the 64 bits vDSO */ vdso64_pages = (&vdso64_end - &vdso64_start) >> PAGE_SHIFT; DBG("vdso64_kbase: %p, 0x%x pages\n", vdso64_kbase, vdso64_pages); -#endif /* CONFIG_PPC64 */ - -#ifdef CONFIG_VDSO32 vdso32_kbase = &vdso32_start; /* @@ -739,8 +726,6 @@ static int __init vdso_init(void) */ vdso32_pages = (&vdso32_end - &vdso32_start) >> PAGE_SHIFT; DBG("vdso32_kbase: %p, 0x%x pages\n", vdso32_kbase, vdso32_pages); -#endif - vdso_setup_syscall_map(); @@ -751,19 +736,15 @@ static int __init vdso_init(void) if (vdso_setup()) { printk(KERN_ERR "vDSO setup failure, not enabled !\n"); vdso32_pages = 0; -#ifdef CONFIG_PPC64 vdso64_pages = 0; -#endif return 0; } -#ifdef CONFIG_VDSO32 - vdso32_pagelist = vdso_setup_pages(&vdso32_start, &vdso32_end); -#endif + if (IS_ENABLED(CONFIG_VDSO32)) + vdso32_pagelist = vdso_setup_pages(&vdso32_start, &vdso32_end); -#ifdef CONFIG_PPC64 - vdso64_pagelist = vdso_setup_pages(&vdso64_start, &vdso64_end); -#endif /* CONFIG_PPC64 */ + if (IS_ENABLED(CONFIG_PPC64)) + vdso64_pagelist = vdso_setup_pages(&vdso64_start, &vdso64_end); smp_wmb(); vdso_ready = 1; -- 2.25.0
WARNING: multiple messages have this Message-ID (diff)
From: Christophe Leroy <christophe.leroy@csgroup.eu> To: Benjamin Herrenschmidt <benh@kernel.crashing.org>, Paul Mackerras <paulus@samba.org>, Michael Ellerman <mpe@ellerman.id.au> Cc: linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org Subject: [PATCH v1 07/30] powerpc/vdso: Remove unnecessary ifdefs in vdso_pagelist initialization Date: Sun, 27 Sep 2020 09:16:24 +0000 (UTC) [thread overview] Message-ID: <f9333432e329b1fcbbbf846cb1cd4a1c4127a60b.1601197618.git.christophe.leroy@csgroup.eu> (raw) In-Reply-To: <cover.1601197618.git.christophe.leroy@csgroup.eu> No need of all those #ifdefs around the pagelist initialisation, use IS_ENABLED(), GCC will kick out unused static variables. Signed-off-by: Christophe Leroy <christophe.leroy@csgroup.eu> --- arch/powerpc/kernel/vdso.c | 31 ++++++------------------------- 1 file changed, 6 insertions(+), 25 deletions(-) diff --git a/arch/powerpc/kernel/vdso.c b/arch/powerpc/kernel/vdso.c index d129d7ee006d..a24f6a583fac 100644 --- a/arch/powerpc/kernel/vdso.c +++ b/arch/powerpc/kernel/vdso.c @@ -53,15 +53,12 @@ static struct page **vdso32_pagelist; unsigned long vdso32_sigtramp; unsigned long vdso32_rt_sigtramp; -#ifdef CONFIG_VDSO32 extern char vdso32_start, vdso32_end; -#endif - -#ifdef CONFIG_PPC64 extern char vdso64_start, vdso64_end; static void *vdso64_kbase = &vdso64_start; static unsigned int vdso64_pages; static struct page **vdso64_pagelist; +#ifdef CONFIG_PPC64 unsigned long vdso64_rt_sigtramp; #endif /* CONFIG_PPC64 */ @@ -136,7 +133,6 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) if (!vdso_ready) return 0; -#ifdef CONFIG_PPC64 if (is_32bit_task()) { vdso_pagelist = vdso32_pagelist; vdso_pages = vdso32_pages; @@ -151,11 +147,6 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) */ vdso_base = 0; } -#else - vdso_pagelist = vdso32_pagelist; - vdso_pages = vdso32_pages; - vdso_base = VDSO32_MBASE; -#endif current->mm->context.vdso_base = 0; @@ -614,9 +605,7 @@ static __init int vdso_setup(void) struct lib64_elfinfo v64; v32.hdr = vdso32_kbase; -#ifdef CONFIG_PPC64 v64.hdr = vdso64_kbase; -#endif if (vdso_do_find_sections(&v32, &v64)) return -1; @@ -722,16 +711,14 @@ static int __init vdso_init(void) vdso_data->icache_block_size = ppc64_caches.l1i.block_size; vdso_data->dcache_log_block_size = ppc64_caches.l1d.log_block_size; vdso_data->icache_log_block_size = ppc64_caches.l1i.log_block_size; +#endif /* CONFIG_PPC64 */ /* * Calculate the size of the 64 bits vDSO */ vdso64_pages = (&vdso64_end - &vdso64_start) >> PAGE_SHIFT; DBG("vdso64_kbase: %p, 0x%x pages\n", vdso64_kbase, vdso64_pages); -#endif /* CONFIG_PPC64 */ - -#ifdef CONFIG_VDSO32 vdso32_kbase = &vdso32_start; /* @@ -739,8 +726,6 @@ static int __init vdso_init(void) */ vdso32_pages = (&vdso32_end - &vdso32_start) >> PAGE_SHIFT; DBG("vdso32_kbase: %p, 0x%x pages\n", vdso32_kbase, vdso32_pages); -#endif - vdso_setup_syscall_map(); @@ -751,19 +736,15 @@ static int __init vdso_init(void) if (vdso_setup()) { printk(KERN_ERR "vDSO setup failure, not enabled !\n"); vdso32_pages = 0; -#ifdef CONFIG_PPC64 vdso64_pages = 0; -#endif return 0; } -#ifdef CONFIG_VDSO32 - vdso32_pagelist = vdso_setup_pages(&vdso32_start, &vdso32_end); -#endif + if (IS_ENABLED(CONFIG_VDSO32)) + vdso32_pagelist = vdso_setup_pages(&vdso32_start, &vdso32_end); -#ifdef CONFIG_PPC64 - vdso64_pagelist = vdso_setup_pages(&vdso64_start, &vdso64_end); -#endif /* CONFIG_PPC64 */ + if (IS_ENABLED(CONFIG_PPC64)) + vdso64_pagelist = vdso_setup_pages(&vdso64_start, &vdso64_end); smp_wmb(); vdso_ready = 1; -- 2.25.0
next prev parent reply other threads:[~2020-09-27 9:16 UTC|newest] Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-09-27 9:16 [PATCH v1 00/30] Modernise VDSO setup Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 01/30] powerpc/vdso: Stripped VDSO is not needed, don't build it Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 02/30] powerpc/vdso: Add missing includes and clean vdso_setup_syscall_map() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 03/30] powerpc/vdso: Rename syscall_map_32/64 to simplify vdso_setup_syscall_map() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 04/30] powerpc/vdso: Remove get_page() in vdso_pagelist initialization Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 05/30] powerpc/vdso: Remove NULL termination element in vdso_pagelist Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 06/30] powerpc/vdso: Refactor 32 bits and 64 bits pages setup Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy [this message] 2020-09-27 9:16 ` [PATCH v1 07/30] powerpc/vdso: Remove unnecessary ifdefs in vdso_pagelist initialization Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 08/30] powerpc/vdso: Use VDSO size in arch_setup_additional_pages() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 09/30] powerpc/vdso: Simplify arch_setup_additional_pages() exit Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 10/30] powerpc/vdso: Move to _install_special_mapping() and remove arch_vma_name() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 11/30] powerpc/vdso: Provide vdso_remap() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 12/30] powerpc/vdso: Replace vdso_base by vdso Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 13/30] powerpc/vdso: Move vdso datapage up front Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 14/30] powerpc/vdso: Simplify __get_datapage() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 15/30] powerpc/vdso: Remove unused \tmp param in __get_datapage() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 16/30] powerpc/vdso: Retrieve sigtramp offsets at buildtime Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 17/30] powerpc/vdso: Use builtin symbols to locate fixup section Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 18/30] powerpc/vdso: Merge __kernel_sync_dicache_p5() into __kernel_sync_dicache() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 19/30] powerpc/vdso: Remove vdso32_pages and vdso64_pages Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 20/30] powerpc/vdso: Remove __kernel_datapage_offset Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 21/30] powerpc/vdso: Remove runtime generated sigtramp offsets Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 22/30] powerpc/vdso: Remove vdso_patches[] and associated functions Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 23/30] powerpc/vdso: Remove unused text member in struct lib32/64_elfinfo Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 24/30] powerpc/vdso: Remove symbol section information " Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 25/30] powerpc/vdso: Remove lib32_elfinfo and lib64_elfinfo Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 26/30] powerpc/vdso: Remove vdso_setup() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 27/30] powerpc/vdso: Remove vdso_ready Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 28/30] powerpc/vdso: Remove DBG() Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 29/30] powerpc/vdso: Remove VDSO32_LBASE and VDSO64_LBASE Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-09-27 9:16 ` [PATCH v1 30/30] powerpc/vdso: Cleanup vdso.h Christophe Leroy 2020-09-27 9:16 ` Christophe Leroy 2020-12-10 11:29 ` [PATCH v1 00/30] Modernise VDSO setup Michael Ellerman 2020-12-10 11:29 ` Michael Ellerman
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=f9333432e329b1fcbbbf846cb1cd4a1c4127a60b.1601197618.git.christophe.leroy@csgroup.eu \ --to=christophe.leroy@csgroup.eu \ --cc=benh@kernel.crashing.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linuxppc-dev@lists.ozlabs.org \ --cc=mpe@ellerman.id.au \ --cc=paulus@samba.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.