Re: linux-next: build failure after merge of Linus' tree

From: Leon Romanovsky
Date: Tue Aug 09 2016 - 04:54:46 EST


On Mon, Aug 8, 2016 at 6:37 PM, Doug Ledford <dledford@xxxxxxxxxx> wrote:
> On 8/7/2016 9:58 PM, Stephen Rothwell wrote:
>> Hi all,
>>
>> With Linus' tree, today's linux-next build (powerpc allyesconfig) failed
>> like this:
>>
>> drivers/infiniband/sw/built-in.o:(.opd+0x1698): multiple definition of `copy_data'
>> drivers/infiniband/hw/built-in.o:(.opd+0xe5f8): first defined here
>> drivers/infiniband/sw/built-in.o:(.opd+0x1320): multiple definition of `rxe_av_from_attr'
>> drivers/infiniband/hw/built-in.o:(.opd+0xe280): first defined here
>
> This looks very suspicious. I think you are picking up two copies of
> the rxe code. One from Linus tree and one from probably Leon's tree.
> The thing is, the rxe driver is an entirely software RoCE driver. So,
> after I picked it up, I moved it from drivers/infiniband/hw to
> drivers/infiniband/sw where it more correctly belongs. Leon's tree
> doesn't have that move, and since you pull Leon's tree into your -next
> process, with the allyesconfig you are trying to build two copies of it
> and put them both statically into the kernel, hence all of the double
> definitions. Leon needs to drop his copy of the rxe driver and let the
> one in Linus' tree be the only one in existence.

Doug,
Just to be clear on this point and on my flow.
I'm resetting my ->next branches on the same day of your email
announcement of acceptance.

Thanks