From: Linus Walleij Date: Tue, 23 Apr 2024 07:31:41 +0000 (+0100) Subject: ARM: 9386/2: mm: Use symbol alias for cache functions X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=2074beebacfc09b6c47dce1f573a67131c70ec9a;p=linux.git ARM: 9386/2: mm: Use symbol alias for cache functions The cache functions to flush user cache (*_flush_user_cache_all) are in many cases just a branch to the corresponfing userspace or kernelspace function. These functions also have the same arguments. Simplify these by using SYM_FUNC_ALIAS() in all affected sites. The NOP cache has very many similar calls which are just returns, but it would be confusing to use aliases here, so leave all the explicit returns and drop a comment on why we are not using aliases. Reviewed-by: Sami Tolvanen Signed-off-by: Linus Walleij Signed-off-by: Russell King (Oracle) --- diff --git a/arch/arm/mm/cache-fa.S b/arch/arm/mm/cache-fa.S index c3642d5daf382..ecd08bf440cb8 100644 --- a/arch/arm/mm/cache-fa.S +++ b/arch/arm/mm/cache-fa.S @@ -52,9 +52,7 @@ SYM_FUNC_END(fa_flush_icache_all) * Clean and invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(fa_flush_user_cache_all) - b fa_flush_kern_cache_all -SYM_FUNC_END(fa_flush_user_cache_all) +SYM_FUNC_ALIAS(fa_flush_user_cache_all, fa_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/cache-nop.S b/arch/arm/mm/cache-nop.S index 56e94091a55fa..cd191aa903135 100644 --- a/arch/arm/mm/cache-nop.S +++ b/arch/arm/mm/cache-nop.S @@ -6,6 +6,10 @@ #include "proc-macros.S" +/* + * These are all open-coded instead of aliased, to make clear + * what is going on here: all functions are stubbed out. + */ SYM_TYPED_FUNC_START(nop_flush_icache_all) ret lr SYM_FUNC_END(nop_flush_icache_all) diff --git a/arch/arm/mm/cache-v4.S b/arch/arm/mm/cache-v4.S index 22d9c9d9e0d77..f7b7e498d3b61 100644 --- a/arch/arm/mm/cache-v4.S +++ b/arch/arm/mm/cache-v4.S @@ -28,9 +28,7 @@ SYM_FUNC_END(v4_flush_icache_all) * * - mm - mm_struct describing address space */ -SYM_TYPED_FUNC_START(v4_flush_user_cache_all) - b v4_flush_kern_cache_all -SYM_FUNC_END(v4_flush_user_cache_all) +SYM_FUNC_ALIAS(v4_flush_user_cache_all, v4_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/cache-v4wb.S b/arch/arm/mm/cache-v4wb.S index 0d97b594e23f0..00488108a8736 100644 --- a/arch/arm/mm/cache-v4wb.S +++ b/arch/arm/mm/cache-v4wb.S @@ -66,9 +66,7 @@ SYM_FUNC_END(v4wb_flush_icache_all) * Clean and invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(v4wb_flush_user_cache_all) - b v4wb_flush_kern_cache_all -SYM_FUNC_END(v4wb_flush_user_cache_all) +SYM_FUNC_ALIAS(v4wb_flush_user_cache_all, v4wb_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/cache-v4wt.S b/arch/arm/mm/cache-v4wt.S index eee6d8f06b4dd..573f65271cbb9 100644 --- a/arch/arm/mm/cache-v4wt.S +++ b/arch/arm/mm/cache-v4wt.S @@ -56,9 +56,7 @@ SYM_FUNC_END(v4wt_flush_icache_all) * Invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(v4wt_flush_user_cache_all) - b v4wt_flush_kern_cache_all -SYM_FUNC_END(v4wt_flush_user_cache_all) +SYM_FUNC_ALIAS(v4wt_flush_user_cache_all, v4wt_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm1020.S b/arch/arm/mm/proc-arm1020.S index a3f99e1c11865..2c873e65a5b93 100644 --- a/arch/arm/mm/proc-arm1020.S +++ b/arch/arm/mm/proc-arm1020.S @@ -127,9 +127,7 @@ SYM_FUNC_END(arm1020_flush_icache_all) * Invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(arm1020_flush_user_cache_all) - b arm1020_flush_kern_cache_all -SYM_FUNC_END(arm1020_flush_user_cache_all) +SYM_FUNC_ALIAS(arm1020_flush_user_cache_all, arm1020_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm1020e.S b/arch/arm/mm/proc-arm1020e.S index 64c63eb5d830e..d8217737a60b3 100644 --- a/arch/arm/mm/proc-arm1020e.S +++ b/arch/arm/mm/proc-arm1020e.S @@ -127,9 +127,7 @@ SYM_FUNC_END(arm1020e_flush_icache_all) * Invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(arm1020e_flush_user_cache_all) - b arm1020e_flush_kern_cache_all -SYM_FUNC_END(arm1020e_flush_user_cache_all) +SYM_FUNC_ALIAS(arm1020e_flush_user_cache_all, arm1020e_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm1022.S b/arch/arm/mm/proc-arm1022.S index e170497353ae9..5348cebe7e715 100644 --- a/arch/arm/mm/proc-arm1022.S +++ b/arch/arm/mm/proc-arm1022.S @@ -127,9 +127,7 @@ SYM_FUNC_END(arm1022_flush_icache_all) * Invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(arm1022_flush_user_cache_all) - b arm1022_flush_kern_cache_all -SYM_FUNC_END(arm1022_flush_user_cache_all) +SYM_FUNC_ALIAS(arm1022_flush_user_cache_all, arm1022_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm1026.S b/arch/arm/mm/proc-arm1026.S index 4b5a4849ad850..466f861d750c2 100644 --- a/arch/arm/mm/proc-arm1026.S +++ b/arch/arm/mm/proc-arm1026.S @@ -127,9 +127,7 @@ SYM_FUNC_END(arm1026_flush_icache_all) * Invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(arm1026_flush_user_cache_all) - b arm1026_flush_kern_cache_all -SYM_FUNC_END(arm1026_flush_user_cache_all) +SYM_FUNC_ALIAS(arm1026_flush_user_cache_all, arm1026_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm920.S b/arch/arm/mm/proc-arm920.S index fbf8937eae858..6a6e26850a54e 100644 --- a/arch/arm/mm/proc-arm920.S +++ b/arch/arm/mm/proc-arm920.S @@ -116,9 +116,7 @@ SYM_FUNC_END(arm920_flush_icache_all) * Invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(arm920_flush_user_cache_all) - b arm920_flush_kern_cache_all -SYM_FUNC_END(arm920_flush_user_cache_all) +SYM_FUNC_ALIAS(arm920_flush_user_cache_all, arm920_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm922.S b/arch/arm/mm/proc-arm922.S index ccfff2b65f49c..56230e547762f 100644 --- a/arch/arm/mm/proc-arm922.S +++ b/arch/arm/mm/proc-arm922.S @@ -118,9 +118,7 @@ SYM_FUNC_END(arm922_flush_icache_all) * Clean and invalidate all cache entries in a particular * address space. */ -SYM_TYPED_FUNC_START(arm922_flush_user_cache_all) - b arm922_flush_kern_cache_all -SYM_FUNC_END(arm922_flush_user_cache_all) +SYM_FUNC_ALIAS(arm922_flush_user_cache_all, arm922_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm925.S b/arch/arm/mm/proc-arm925.S index d0f73242f70a7..aeb4ee16dcc98 100644 --- a/arch/arm/mm/proc-arm925.S +++ b/arch/arm/mm/proc-arm925.S @@ -151,9 +151,7 @@ SYM_FUNC_END(arm925_flush_icache_all) * Clean and invalidate all cache entries in a particular * address space. */ -SYM_TYPED_FUNC_START(arm925_flush_user_cache_all) - b arm925_flush_kern_cache_all -SYM_FUNC_END(arm925_flush_user_cache_all) +SYM_FUNC_ALIAS(arm925_flush_user_cache_all, arm925_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm926.S b/arch/arm/mm/proc-arm926.S index 00f953dee1221..221aada5d2887 100644 --- a/arch/arm/mm/proc-arm926.S +++ b/arch/arm/mm/proc-arm926.S @@ -117,9 +117,7 @@ SYM_FUNC_END(arm926_flush_icache_all) * Clean and invalidate all cache entries in a particular * address space. */ -SYM_TYPED_FUNC_START(arm926_flush_user_cache_all) - b arm926_flush_kern_cache_all -SYM_FUNC_END(arm926_flush_user_cache_all) +SYM_FUNC_ALIAS(arm926_flush_user_cache_all, arm926_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm940.S b/arch/arm/mm/proc-arm940.S index 7e32ec271e8a5..23646bf801e16 100644 --- a/arch/arm/mm/proc-arm940.S +++ b/arch/arm/mm/proc-arm940.S @@ -81,9 +81,7 @@ SYM_FUNC_END(arm940_flush_icache_all) /* * flush_user_cache_all() */ -SYM_TYPED_FUNC_START(arm940_flush_user_cache_all) - b arm940_flush_kern_cache_all -SYM_FUNC_END(arm940_flush_user_cache_all) +SYM_FUNC_ALIAS(arm940_flush_user_cache_all, arm940_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-arm946.S b/arch/arm/mm/proc-arm946.S index 4fc883572e191..763a5a9bc7356 100644 --- a/arch/arm/mm/proc-arm946.S +++ b/arch/arm/mm/proc-arm946.S @@ -88,9 +88,7 @@ SYM_FUNC_END(arm946_flush_icache_all) /* * flush_user_cache_all() */ -SYM_TYPED_FUNC_START(arm946_flush_user_cache_all) - b arm946_flush_kern_cache_all -SYM_FUNC_END(arm946_flush_user_cache_all) +SYM_FUNC_ALIAS(arm946_flush_user_cache_all, arm946_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-feroceon.S b/arch/arm/mm/proc-feroceon.S index ee936c23cac5d..d31fe58bf475f 100644 --- a/arch/arm/mm/proc-feroceon.S +++ b/arch/arm/mm/proc-feroceon.S @@ -136,9 +136,7 @@ SYM_FUNC_END(feroceon_flush_icache_all) * address space. */ .align 5 -SYM_TYPED_FUNC_START(feroceon_flush_user_cache_all) - b feroceon_flush_kern_cache_all -SYM_FUNC_END(feroceon_flush_user_cache_all) +SYM_FUNC_ALIAS(feroceon_flush_user_cache_all, feroceon_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-mohawk.S b/arch/arm/mm/proc-mohawk.S index 519b7ff2c589e..949e2f254779d 100644 --- a/arch/arm/mm/proc-mohawk.S +++ b/arch/arm/mm/proc-mohawk.S @@ -100,9 +100,7 @@ SYM_FUNC_END(mohawk_flush_icache_all) * Clean and invalidate all cache entries in a particular * address space. */ -SYM_TYPED_FUNC_START(mohawk_flush_user_cache_all) - b mohawk_flush_kern_cache_all -SYM_FUNC_END(mohawk_flush_user_cache_all) +SYM_FUNC_ALIAS(mohawk_flush_user_cache_all, mohawk_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-xsc3.S b/arch/arm/mm/proc-xsc3.S index f08b3fce4c956..ac3d99b49cc03 100644 --- a/arch/arm/mm/proc-xsc3.S +++ b/arch/arm/mm/proc-xsc3.S @@ -157,9 +157,7 @@ SYM_FUNC_END(xsc3_flush_icache_all) * Invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(xsc3_flush_user_cache_all) - b xsc3_flush_kern_cache_all -SYM_FUNC_END(xsc3_flush_user_cache_all) +SYM_FUNC_ALIAS(xsc3_flush_user_cache_all, xsc3_flush_kern_cache_all) /* * flush_kern_cache_all() diff --git a/arch/arm/mm/proc-xscale.S b/arch/arm/mm/proc-xscale.S index 3e427db18d5b6..05d9ed9529831 100644 --- a/arch/arm/mm/proc-xscale.S +++ b/arch/arm/mm/proc-xscale.S @@ -199,9 +199,7 @@ SYM_FUNC_END(xscale_flush_icache_all) * Invalidate all cache entries in a particular address * space. */ -SYM_TYPED_FUNC_START(xscale_flush_user_cache_all) - b xscale_flush_kern_cache_all -SYM_FUNC_END(xscale_flush_user_cache_all) +SYM_FUNC_ALIAS(xscale_flush_user_cache_all, xscale_flush_kern_cache_all) /* * flush_kern_cache_all()