From: Willy Tarreau <w@1wt.eu>
To: Mikael Pettersson <mikpe@it.uu.se>
Cc: ak@suse.de, linux-kernel@vger.kernel.org, davem@davemloft.net
Subject: Re: [PATCH 2.4.34-pre1] fix x86_64 etc build failure due to memchr change
Date: Sun, 20 Aug 2006 03:31:09 +0200 [thread overview]
Message-ID: <20060820013109.GF27115@1wt.eu> (raw)
In-Reply-To: <200608192219.k7JMJ6DQ012098@harpo.it.uu.se>
On Sun, Aug 20, 2006 at 12:19:06AM +0200, Mikael Pettersson wrote:
> 2.4.34-pre1 doesn't build on x86_64:
>
> kernel/kernel.o(__ksymtab+0x1c10): multiple definition of `__ksymtab_memchr'
> arch/x86_64/kernel/kernel.o(__ksymtab+0x3f0): first defined here
> kernel/kernel.o(.kstrtab+0x3960): multiple definition of `__kstrtab_memchr'
> arch/x86_64/kernel/kernel.o(.kstrtab+0x5fd): first defined here
> ld: Warning: size of symbol `__kstrtab_memchr' changed from 7 in arch/x86_64/kernel/kernel.o to 17 in kernel/kernel.o
> make: *** [vmlinux] Error 1
>
> This is because the 'export memchr() which is used by smbfs and lp driver'
> change in 2.4.34-pre1 added an EXPORT_SYMBOL of memchr to kernel/ksyms.c
> without also removing the existing one in arch/x86_64/kernel/x8664_ksyms.c.
> Alpha, ARM, ppc32, and SH also have EXPORTs of memchr so they probably
> also broke.
>
> This patch removes the EXPORTs of memchr under arch/, which fixes x86_64
> and should fix the other architectures as well.
OK Mikael,
I have fixed sparc and sparc64 instead, and it's OK now without having to
export memchr() in kernel/ksyms.c. So the fix is shorter and more logical.
It brings non-sparc architectures to their state before my wrong fix. However,
sparc needs to export memchr() for smbfs and lp.
diff --git a/arch/sparc/kernel/sparc_ksyms.c b/arch/sparc/kernel/sparc_ksyms.c
index 1c08204..f5058fe 100644
--- a/arch/sparc/kernel/sparc_ksyms.c
+++ b/arch/sparc/kernel/sparc_ksyms.c
@@ -297,6 +297,7 @@ EXPORT_SYMBOL_NOVERS(memcmp);
EXPORT_SYMBOL_NOVERS(memcpy);
EXPORT_SYMBOL_NOVERS(memset);
EXPORT_SYMBOL_NOVERS(memmove);
+EXPORT_SYMBOL_NOVERS(memchr);
EXPORT_SYMBOL_NOVERS(__ashrdi3);
EXPORT_SYMBOL_NOVERS(__ashldi3);
EXPORT_SYMBOL_NOVERS(__lshrdi3);
diff --git a/arch/sparc64/kernel/sparc64_ksyms.c b/arch/sparc64/kernel/sparc64_ksyms.c
index 0f1f31f..40accab 100644
--- a/arch/sparc64/kernel/sparc64_ksyms.c
+++ b/arch/sparc64/kernel/sparc64_ksyms.c
@@ -359,6 +359,7 @@ EXPORT_SYMBOL_NOVERS(__ret_efault);
/* No version information on these, as gcc produces such symbols. */
EXPORT_SYMBOL_NOVERS(memcmp);
EXPORT_SYMBOL_NOVERS(memcpy);
+EXPORT_SYMBOL_NOVERS(memchr);
EXPORT_SYMBOL_NOVERS(memset);
EXPORT_SYMBOL_NOVERS(memmove);
diff --git a/kernel/ksyms.c b/kernel/ksyms.c
index 73ad3e9..d1e66c7 100644
--- a/kernel/ksyms.c
+++ b/kernel/ksyms.c
@@ -579,7 +579,6 @@ EXPORT_SYMBOL(get_write_access);
EXPORT_SYMBOL(strnicmp);
EXPORT_SYMBOL(strspn);
EXPORT_SYMBOL(strsep);
-EXPORT_SYMBOL(memchr);
#ifdef CONFIG_CRC32
EXPORT_SYMBOL(crc32_le);
Cheers,
Willy
next prev parent reply other threads:[~2006-08-20 1:31 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-08-19 22:19 [PATCH 2.4.34-pre1] fix x86_64 etc build failure due to memchr change Mikael Pettersson
2006-08-19 23:16 ` Willy Tarreau
2006-08-20 1:31 ` Willy Tarreau [this message]
-- strict thread matches above, loose matches on Subject: below --
2006-08-20 10:24 Mikael Pettersson
2006-08-20 10:40 ` Willy Tarreau
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=20060820013109.GF27115@1wt.eu \
--to=w@1wt.eu \
--cc=ak@suse.de \
--cc=davem@davemloft.net \
--cc=linux-kernel@vger.kernel.org \
--cc=mikpe@it.uu.se \
/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: link
Be 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.