From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750725AbWHTKkt (ORCPT ); Sun, 20 Aug 2006 06:40:49 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1750729AbWHTKks (ORCPT ); Sun, 20 Aug 2006 06:40:48 -0400 Received: from 1wt.eu ([62.212.114.60]:46608 "EHLO 1wt.eu") by vger.kernel.org with ESMTP id S1750725AbWHTKks (ORCPT ); Sun, 20 Aug 2006 06:40:48 -0400 Date: Sun, 20 Aug 2006 12:40:30 +0200 From: Willy Tarreau To: Mikael Pettersson Cc: ak@suse.de, davem@davemloft.net, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2.4.34-pre1] fix x86_64 etc build failure due to memchr change Message-ID: <20060820104030.GF602@1wt.eu> References: <200608201024.k7KAO4i5023339@harpo.it.uu.se> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200608201024.k7KAO4i5023339@harpo.it.uu.se> User-Agent: Mutt/1.5.11 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Sun, Aug 20, 2006 at 12:24:04PM +0200, Mikael Pettersson wrote: > On Sun, 20 Aug 2006 03:31:09 +0200, Willy Tarreau wrote: > >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. > > Works for me. Tested on i386, x86_64, and ppc32. I'll try to test on sparc64 > later today. Perfect. I have already checked sparc64 last night, so I think the fix was the right thing to do. > /Mikael Thanks Mikael, Willy