lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 13 Jan 2009 22:38:01 -0500
From:	Robert Reif <reif@...thlink.net>
To:	Andrew Morton <akpm@...ux-foundation.org>
CC:	David Miller <davem@...emloft.net>,
	"sparclinux@...r.kernel.org" <sparclinux@...r.kernel.org>,
	mingo@...e.hu, linux-kernel@...r.kernel.org
Subject: Re: sparc32 compile error: redefinition of ‘smp_call_function_single’

Andrew Morton wrote:
> On Tue, 13 Jan 2009 18:42:39 -0800 Andrew Morton <akpm@...ux-foundation.org> wrote:
>
>   
>> On Tue, 13 Jan 2009 18:10:39 -0800 (PST) David Miller <davem@...emloft.net> wrote:
>>
>>     
>>> From: Robert Reif <reif@...thlink.net>
>>> Date: Tue, 13 Jan 2009 20:40:04 -0500
>>>
>>>       
>>>> Todays git produces this compile error on sparc32:
>>>>
>>>> kernel/up.c:10: error: redefinition of ___smp_call_function_single___
>>>> /usr/src/sparc32/linux-2.6/arch/sparc/include/asm/smp_32.h:78: error: previous definition of ___smp_call_function_single___ was here
>>>>         
>>> Andrew, are you sure that Makefile condition for compiling
>>> up.o is correct?
>>>       
>> you give me grounds for now being ;)
>>
>>     
>>> ifeq ($(CONFIG_USE_GENERIC_SMP_HELPERS),y)
>>> obj-y += smp.o
>>> else
>>> obj-y += up.o
>>> endif
>>>
>>> If an arch doesn't use generic SMP helpers, there is no way
>>> we should compile up.c into the tree when SMP.
>>>
>>>       
>> How's about this?
>>
>> --- a/kernel/Makefile~a
>> +++ a/kernel/Makefile
>> @@ -43,7 +43,7 @@ obj-$(CONFIG_GENERIC_ISA_DMA) += dma.o
>>  ifeq ($(CONFIG_USE_GENERIC_SMP_HELPERS),y)
>>  obj-y += smp.o
>>  else
>> -obj-y += up.o
>> +obj-$(CONFIG_SMP) += up.o
>>  endif
>>  obj-$(CONFIG_SMP) += spinlock.o
>>  obj-$(CONFIG_DEBUG_SPINLOCK) += spinlock.o
>>     
>
> err, the other way of course...
>
> --- a/kernel/Makefile~a
> +++ a/kernel/Makefile
> @@ -43,6 +43,7 @@ obj-$(CONFIG_GENERIC_ISA_DMA) += dma.o
>  ifeq ($(CONFIG_USE_GENERIC_SMP_HELPERS),y)
>  obj-y += smp.o
>  else
> +ifneq ($(CONFIG_SMP),y)
>  obj-y += up.o
>  endif
>  obj-$(CONFIG_SMP) += spinlock.o
> _
>
>
>
>   
This worked:

diff --git a/kernel/Makefile b/kernel/Makefile
index 2aebc4c..368227d 100644
--- a/kernel/Makefile
+++ b/kernel/Makefile
@@ -43,8 +43,10 @@ obj-$(CONFIG_GENERIC_ISA_DMA) += dma.o
 ifeq ($(CONFIG_USE_GENERIC_SMP_HELPERS),y)
 obj-y += smp.o
 else
+ifneq ($(CONFIG_SMP),y)
 obj-y += up.o
 endif
+endif
 obj-$(CONFIG_SMP) += spinlock.o
 obj-$(CONFIG_DEBUG_SPINLOCK) += spinlock.o
 obj-$(CONFIG_PROVE_LOCKING) += spinlock.o

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ