Re: [PATCH/RFC] Re: linux-next: build failure after merge of the luto-misc tree

From: Andy Lutomirski
Date: Tue Jul 19 2016 - 22:57:51 EST


On Tue, Jul 19, 2016 at 7:52 PM, Arnaldo Carvalho de Melo
<acme@xxxxxxxxxx> wrote:
> Em Wed, Jul 20, 2016 at 09:53:33AM +1000, Stephen Rothwell escreveu:
>> On Wed, 20 Jul 2016 09:21:57 +1000 Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>> > On Tue, 19 Jul 2016 14:45:51 -0300 Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:
>> > > #if BITS_PER_LONG != __BITS_PER_LONG
>> > > +#include <linux/stringify.h>
>> > > +#pragma message "BITS_PER_LONG=" __stringify(BITS_PER_LONG)
>> > > +#pragma message "__BITS_PER_LONG=" __stringify(__BITS_PER_LONG)
>> > > #error Inconsistent word size. Check asm/bitsperlong.h
>> > > #endif
>
>> > I added those three lines to the file (just in yesterday's linux-next
>> > was easiest) and got this:
>
>> > /home/sfr/next/next/tools/include/asm-generic/bitsperlong.h:14:9: note: #pragma message: BITS_PER_LONG=(8 * 8)
>> > #pragma message "BITS_PER_LONG=" __stringify(BITS_PER_LONG)
>
>> > /home/sfr/next/next/tools/include/asm-generic/bitsperlong.h:15:9: note: #pragma message: __BITS_PER_LONG=32
>> > #pragma message "__BITS_PER_LONG=" __stringify(__BITS_PER_LONG)
>
>> > (a few times, of course)
>
>> So I applied this:
>
>> +++ b/tools/arch/x86/include/uapi/asm/bitsperlong.h
>> @@ -4,6 +4,12 @@
>> #if defined(__x86_64__) && !defined(__ILP32__)
>> # define __BITS_PER_LONG 64
>> #else
>> +#ifndef __x86_64__
>> +#pragma message "__x86_64__ is not defined"
>> +#endif
>> +#ifdef __ILP32__
>> +#pragma message "__ILP32__ is defined"
>> +#endif
>> # define __BITS_PER_LONG 32
>> #endif
>
>> and got this:
>
>> /home/sfr/next/next/tools/arch/x86/include/uapi/asm/bitsperlong.h:8:9: note: #pragma message: __x86_64__ is not defined
>> #pragma message "__x86_64__ is not defined"
>
> Humm, it seems that the compiler used is not the cross one, but the
> native, check if, say, __powerpc__ is defined.
>

This is still vdso2c, right? It's a hostprog.

This stuff is utterly screwed up. We're building a hostprog for an
x86_64 kernel cross-compiled from powerpc. We should presumably be
pullng in powerpc's uapi headers for hostprogs because it's a *host*
prog.

--Andy

> - Arnaldo



--
Andy Lutomirski
AMA Capital Management, LLC