[tip: x86/cleanups] x86/asm: Avoid unneeded __div64_32 function definition

From: tip-bot2 for Arnd Bergmann
Date: Thu Aug 03 2023 - 11:59:32 EST


The following commit has been merged into the x86/cleanups branch of tip:

Commit-ID: 65412c8d72741cc6e6b082b478b8957d7e7c0480
Gitweb: https://git.kernel.org/tip/65412c8d72741cc6e6b082b478b8957d7e7c0480
Author: Arnd Bergmann <arnd@xxxxxxxx>
AuthorDate: Thu, 03 Aug 2023 10:26:15 +02:00
Committer: Borislav Petkov (AMD) <bp@xxxxxxxxx>
CommitterDate: Thu, 03 Aug 2023 12:08:35 +02:00

x86/asm: Avoid unneeded __div64_32 function definition

The __div64_32() function is provided for 32-bit architectures that
don't have a custom do_div() implementation. x86_32 has one, and
does not use the header file that declares the function prototype,
so the definition causes a W=1 warning:

lib/math/div64.c:31:32: error: no previous prototype for '__div64_32' [-Werror=missing-prototypes]

Define an empty macro to prevent the function definition from getting
built, which avoids the warning and saves a little .text space.

Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
Signed-off-by: Borislav Petkov (AMD) <bp@xxxxxxxxx>
Link: https://lore.kernel.org/r/20230803082619.1369127-4-arnd@xxxxxxxxxx
---
arch/x86/include/asm/div64.h | 6 ++++++
1 file changed, 6 insertions(+)

diff --git a/arch/x86/include/asm/div64.h b/arch/x86/include/asm/div64.h
index b8f1dc0..9931e4c 100644
--- a/arch/x86/include/asm/div64.h
+++ b/arch/x86/include/asm/div64.h
@@ -71,6 +71,12 @@ static inline u64 mul_u32_u32(u32 a, u32 b)
}
#define mul_u32_u32 mul_u32_u32

+/*
+ * __div64_32() is never called on x86, so prevent the
+ * generic definition from getting built.
+ */
+#define __div64_32
+
#else
# include <asm-generic/div64.h>