summaryrefslogtreecommitdiff
path: root/lib/iomap_copy.c
diff options
context:
space:
mode:
authorJason Gunthorpe <jgg@nvidia.com>2024-04-11 13:46:16 -0300
committerJason Gunthorpe <jgg@nvidia.com>2024-04-22 17:11:20 -0300
commite7bc47b16622d1016b3b77bbdb20fb9e213045f2 (patch)
tree27d7c119e0b28c8d6999b90763643325b8988ddc /lib/iomap_copy.c
parent6ae798cbef4ba1f180aa1a590e33a2d89f7cc34f (diff)
s390: Stop using weak symbols for __iowrite64_copy()
Complete switching the __iowriteXX_copy() routines over to use #define and arch provided inline/macro functions instead of weak symbols. S390 has an implementation that simply calls another memcpy function. Inline this so the callers don't have to do two jumps. Link: https://lore.kernel.org/r/3-v3-1893cd8b9369+1925-mlx5_arm_wc_jgg@nvidia.com Acked-by: Niklas Schnelle <schnelle@linux.ibm.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'lib/iomap_copy.c')
-rw-r--r--lib/iomap_copy.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/iomap_copy.c b/lib/iomap_copy.c
index 8ddcbb53507d..2fd5712fb7c0 100644
--- a/lib/iomap_copy.c
+++ b/lib/iomap_copy.c
@@ -60,9 +60,8 @@ EXPORT_SYMBOL_GPL(__ioread32_copy);
* time. Order of access is not guaranteed, nor is a memory barrier
* performed afterwards.
*/
-void __attribute__((weak)) __iowrite64_copy(void __iomem *to,
- const void *from,
- size_t count)
+#ifndef __iowrite64_copy
+void __iowrite64_copy(void __iomem *to, const void *from, size_t count)
{
#ifdef CONFIG_64BIT
u64 __iomem *dst = to;
@@ -75,5 +74,5 @@ void __attribute__((weak)) __iowrite64_copy(void __iomem *to,
__iowrite32_copy(to, from, count * 2);
#endif
}
-
EXPORT_SYMBOL_GPL(__iowrite64_copy);
+#endif