2013-07-26 06:03:14

by Stephen Rothwell

[permalink] [raw]
Subject: linux-next: build failure after merge of the staging tree

Hi Greg,

After merging the staging tree, today's linux-next build (x86_64
allmodconfig) failed like this:

drivers/staging/xillybus/xillybus_pcie.o:(.data+0x6d8): multiple definition of `xillyname'
drivers/staging/xillybus/xillybus_core.o:(.data+0x888): first defined here

Caused by commit 48bae0507410 ("staging: New driver: Xillybus generic
interface for FPGA").

I have disabled that driver.

--
Cheers,
Stephen Rothwell [email protected]


Attachments:
(No filename) (467.00 B)
(No filename) (836.00 B)
Download all attachments

2013-07-26 21:03:49

by Greg KH

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the staging tree

On Fri, Jul 26, 2013 at 04:02:54PM +1000, Stephen Rothwell wrote:
> Hi Greg,
>
> After merging the staging tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
>
> drivers/staging/xillybus/xillybus_pcie.o:(.data+0x6d8): multiple definition of `xillyname'
> drivers/staging/xillybus/xillybus_core.o:(.data+0x888): first defined here
>
> Caused by commit 48bae0507410 ("staging: New driver: Xillybus generic
> interface for FPGA").
>
> I have disabled that driver.

I think I need to just always make any new staging driver only build as
a module, and not allowed to be built into the kernel. That will save
you time dealing with this, and me the extra time of marking them all as
modules-only every time :)

Sorry about this, I'll go fix this up now...

greg k-h

2013-07-26 21:37:53

by Eli Billauer

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the staging tree

Hello Greg,

I was just about to submit a patch fixing this issue. Should arrive in a
few minutes. Sorry.

Will this be the follow-on patch you mentioned for fixing the "sparse
errors" this driver produced? I'm wasn't sure what you meant with that.

Oddly enough, I failed to repeat the compilation issue with allmodconfig
on x86_64, but it did appear on allyesconfig. The problem is obvious,
and it's strange my own test compilations went through even so.

Regards,
Eli

On 27/07/13 00:03, Greg KH wrote:
> On Fri, Jul 26, 2013 at 04:02:54PM +1000, Stephen Rothwell wrote:
>
>> Hi Greg,
>>
>> After merging the staging tree, today's linux-next build (x86_64
>> allmodconfig) failed like this:
>>
>> drivers/staging/xillybus/xillybus_pcie.o:(.data+0x6d8): multiple definition of `xillyname'
>> drivers/staging/xillybus/xillybus_core.o:(.data+0x888): first defined here
>>
>> Caused by commit 48bae0507410 ("staging: New driver: Xillybus generic
>> interface for FPGA").
>>
>> I have disabled that driver.
>>
> I think I need to just always make any new staging driver only build as
> a module, and not allowed to be built into the kernel. That will save
> you time dealing with this, and me the extra time of marking them all as
> modules-only every time :)
>
> Sorry about this, I'll go fix this up now...
>
> greg k-h
>
>

2013-07-26 21:56:38

by Greg KH

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the staging tree

On Sat, Jul 27, 2013 at 12:22:44AM +0300, Eli Billauer wrote:
> Hello Greg,
>
> I was just about to submit a patch fixing this issue. Should arrive
> in a few minutes. Sorry.

Got it, thanks.

> Will this be the follow-on patch you mentioned for fixing the
> "sparse errors" this driver produced? I'm wasn't sure what you meant
> with that.

No, I need you to do that. Can you do a kernel build with:
make M=drivers/staging/xillybus C=1
and fix up the errors that sparse reports and send a patch for that?

thanks,

greg k-h

2013-07-26 22:55:28

by Eli Billauer

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the staging tree

On 27/07/13 00:56, Greg KH wrote:
> No, I need you to do that. Can you do a kernel build with:
> make M=drivers/staging/xillybus C=1
> and fix up the errors that sparse reports and send a patch for that?
>
>
I'm not sure it's related to me. I get the same errors whether I compile
my own modules or something in e.g. drivers/tty/ . This is what I get
after make allmodconfig on the current staging git repo:

$ make M=drivers/staging/xillybus C=1
/home/eli/xillybus/submission/staging/arch/x86/Makefile:107:
CONFIG_X86_X32 enabled but no binutils support
CHECK drivers/staging/xillybus/xillybus_core.c
/home/eli/xillybus/submission/staging/arch/x86/include/asm/jump_label.h:16:13:
error: Expected ( after asm
/home/eli/xillybus/submission/staging/arch/x86/include/asm/jump_label.h:16:13:
error: got goto
CC [M] drivers/staging/xillybus/xillybus_core.o
CHECK drivers/staging/xillybus/xillybus_pcie.c
/home/eli/xillybus/submission/staging/arch/x86/include/asm/jump_label.h:16:13:
error: Expected ( after asm
/home/eli/xillybus/submission/staging/arch/x86/include/asm/jump_label.h:16:13:
error: got goto
CC [M] drivers/staging/xillybus/xillybus_pcie.o

I'll spare you the output from modules in drivers/tty. But it's exactly
the same messages on each of these modules.

Am I doing something wrong?

Regards,
Eli

P.S. Regarding the missing Reported-By header, I learned something new
today. Thanks. :)

2013-07-26 23:29:02

by Greg KH

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the staging tree

On Sat, Jul 27, 2013 at 01:54:44AM +0300, Eli Billauer wrote:
> On 27/07/13 00:56, Greg KH wrote:
> >No, I need you to do that. Can you do a kernel build with:
> > make M=drivers/staging/xillybus C=1
> >and fix up the errors that sparse reports and send a patch for that?
> >
> I'm not sure it's related to me. I get the same errors whether I
> compile my own modules or something in e.g. drivers/tty/ . This is
> what I get after make allmodconfig on the current staging git repo:
>
> $ make M=drivers/staging/xillybus C=1
> /home/eli/xillybus/submission/staging/arch/x86/Makefile:107:
> CONFIG_X86_X32 enabled but no binutils support
> CHECK drivers/staging/xillybus/xillybus_core.c
> /home/eli/xillybus/submission/staging/arch/x86/include/asm/jump_label.h:16:13:
> error: Expected ( after asm
> /home/eli/xillybus/submission/staging/arch/x86/include/asm/jump_label.h:16:13:
> error: got goto
> CC [M] drivers/staging/xillybus/xillybus_core.o
> CHECK drivers/staging/xillybus/xillybus_pcie.c
> /home/eli/xillybus/submission/staging/arch/x86/include/asm/jump_label.h:16:13:
> error: Expected ( after asm
> /home/eli/xillybus/submission/staging/arch/x86/include/asm/jump_label.h:16:13:
> error: got goto
> CC [M] drivers/staging/xillybus/xillybus_pcie.o
>
> I'll spare you the output from modules in drivers/tty. But it's
> exactly the same messages on each of these modules.
>
> Am I doing something wrong?

Odd, you might need to upgrade the version of sparse you have. My
output looks like:

$ make M=drivers/staging/xillybus/ C=1
LD drivers/staging/xillybus//built-in.o
CHECK drivers/staging/xillybus//xillybus_core.c
drivers/staging/xillybus//xillybus_core.c:76:25: warning: symbol 'xillybus_wq' was not declared. Should it be static?
drivers/staging/xillybus//xillybus_core.c:175:57: warning: incorrect type in argument 2 (different address spaces)
drivers/staging/xillybus//xillybus_core.c:175:57: expected void [noderef] <asn:2>*<noident>
drivers/staging/xillybus//xillybus_core.c:175:57: got unsigned int [usertype] *
drivers/staging/xillybus//xillybus_core.c:309:39: warning: incorrect type in argument 2 (different address spaces)
drivers/staging/xillybus//xillybus_core.c:309:39: expected void [noderef] <asn:2>*<noident>
drivers/staging/xillybus//xillybus_core.c:309:39: got unsigned int [usertype] *
drivers/staging/xillybus//xillybus_core.c:606:55: warning: incorrect type in argument 2 (different address spaces)
drivers/staging/xillybus//xillybus_core.c:606:55: expected void [noderef] <asn:2>*<noident>
drivers/staging/xillybus//xillybus_core.c:606:55: got unsigned int [usertype] *

and goes on for a few screens.

$ sparse --version
0.4.4

Try a newer version and see if that fixes things.

thanks,

greg k-h

2013-07-27 13:31:30

by Eli Billauer

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the staging tree

Hello Greg,

I upgraded sparse 0.4.2 -> 0.4.4 and now we see the same error messages.

It will take me a few days to prepare a patch for that.

Thanks for your patience.
Eli

On 27/07/13 02:28, Greg KH wrote:
> $ make M=drivers/staging/xillybus/ C=1
> LD drivers/staging/xillybus//built-in.o
> CHECK drivers/staging/xillybus//xillybus_core.c
> drivers/staging/xillybus//xillybus_core.c:76:25: warning: symbol 'xillybus_wq' was not declared. Should it be static?
> drivers/staging/xillybus//xillybus_core.c:175:57: warning: incorrect type in argument 2 (different address spaces)
> drivers/staging/xillybus//xillybus_core.c:175:57: expected void [noderef]<asn:2>*<noident>
> drivers/staging/xillybus//xillybus_core.c:175:57: got unsigned int [usertype] *
> drivers/staging/xillybus//xillybus_core.c:309:39: warning: incorrect type in argument 2 (different address spaces)
> drivers/staging/xillybus//xillybus_core.c:309:39: expected void [noderef]<asn:2>*<noident>
> drivers/staging/xillybus//xillybus_core.c:309:39: got unsigned int [usertype] *
> drivers/staging/xillybus//xillybus_core.c:606:55: warning: incorrect type in argument 2 (different address spaces)
> drivers/staging/xillybus//xillybus_core.c:606:55: expected void [noderef]<asn:2>*<noident>
> drivers/staging/xillybus//xillybus_core.c:606:55: got unsigned int [usertype] *
>
> and goes on for a few screens.
>
> $ sparse --version
> 0.4.4
>
> Try a newer version and see if that fixes things.
>