Subject: Re: linux-next: Tree for Mar 31 (build failures and culprits)

From: Guenter Roeck <[email-masked]>
Date: Tue, 31 Mar 2015 20:13:19 -0700

On 03/31/2015 08:01 PM, Michael Ellerman wrote:
> On Tue, 2015-03-31 at 19:18 -0700, Guenter Roeck wrote:
>> On 03/31/2015 04:24 PM, Michael Ellerman wrote:
>>> On Wed, 2015-04-01 at 01:07 +0200, Greg Kroah-Hartman wrote:
>>>> On Tue, Mar 31, 2015 at 09:16:40AM -0700, Guenter Roeck wrote:
>>>>> alpha:allmodconfig
>>>>> mips:allmodconfig
>>>>>
>>>>> samples/kdbus/kdbus-workers.c: In function ‘prime_new’:
>>>>> samples/kdbus/kdbus-workers.c:930:18: error: ‘__NR_memfd_create’ undeclared
>>>>> (first use in this function)
>>>>>     p->fd = syscall(__NR_memfd_create, "prime-area", MFD_CLOEXEC);
>>>>>
>>>>> Looks like the kdbus example never worked for the affected architectures.
>>>>> I don't build allmodconfig for all architectures, so other architectures
>>>>> may be affected as well.
>>>>
>>>> You need 3.17 kernel headers to have memfd_create, not much the kdbus
>>>> test code can do about that.  You might want to update the kernel
>>>> headers for these build boxes.
>>>
>>> Or just 'make headers_install' before building the samples should do it.
>>>
>>
>> Sure, that works so well in a cross build environment.
>
> Well yeah it does, I do it all the time.
>
> But what you mean is that the samples are built with HOSTCC, so having the
> cross headers doesn't help.
>
> The real problem here is samples, they shouldn't be built with the kernel, they
> should be a separate thing, like the selftests.
>

I "solved" the problem by disabling CONFIG_SAMPLES in my alpha and mips
builds.

FWIW, I think (suspect) that the samples builder does the equivalent
of "make headers_install" as part of the build process, but I don't
have time to track it down.

Guenter