[lkml]   [2014]   [Mar]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[tip:x86/boot] x86, boot: Undef memcmp before providing a new definition
Commit-ID:  aad830938ed8ba175d8060751654f78d4115ea0a
Author: Vivek Goyal <>
AuthorDate: Tue, 18 Mar 2014 15:26:36 -0400
Committer: H. Peter Anvin <>
CommitDate: Wed, 19 Mar 2014 15:43:37 -0700

x86, boot: Undef memcmp before providing a new definition

With CONFIG_X86_32=y, string_32.h gets pulled in compressed/string.c by
"misch.h". string_32.h defines a macro to map memcmp to __builtin_memcmp().
And that macro in turn changes the name of memcmp() defined here and
converts it to __builtin_memcmp().

I thought that's not the intention though. We probably want to provide
our own optimized definition of memcmp(). If yes, then undef the memcmp
before we define a new memcmp.

Signed-off-by: Vivek Goyal <>
Signed-off-by: H. Peter Anvin <>
arch/x86/boot/compressed/string.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/x86/boot/compressed/string.c b/arch/x86/boot/compressed/string.c
index ffb9c5c..212004e 100644
--- a/arch/x86/boot/compressed/string.c
+++ b/arch/x86/boot/compressed/string.c
@@ -1,5 +1,7 @@
#include "misc.h"

+/* Avoid intereference from any defines in string_32.h */
+#undef memcmp
int memcmp(const void *s1, const void *s2, size_t len)
u8 diff;

 \ /
  Last update: 2014-03-20 01:21    [W:0.073 / U:17.448 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site