Re: linux-next: build failure after merge of the akpm-current tree

From: Ingo Molnar
Date: Mon Jan 11 2016 - 06:39:44 EST



[Cc:-ed perf tooling guys as well.]

* Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:

> Hi Andrew,
>
> After merging the akpm-current tree, today's linux-next build (perf)
> failed like this:
>
> In file included from /home/sfr/next/next/tools/include/linux/list.h:5:0,
> from arch/../util/map.h:6,
> from arch/../util/event.h:8,
> from arch/../util/debug.h:7,
> from arch/common.c:4:
> /home/sfr/next/next/tools/include/linux/../../../include/linux/list.h: In function 'list_force_poison':
> /home/sfr/next/next/tools/include/linux/../../../include/linux/list.h:123:56: error: unused parameter 'entry' [-Werror=unused-parameter]
> static inline void list_force_poison(struct list_head *entry)
> ^
>
> and many more like that.
>
> Caused by commit
>
> a471eb786598 ("mm, dax, pmem: introduce {get|put}_dev_pagemap() for dax-gup")
>
> I just left the perf build broken for today.

So I think it's time to create a tooling copy of list.h as well, to decouple
tooling and kernel side uses of list.h.

We could do the same trick as with tools/lib/rbtree.c and
tools/include/linux/rbtree.h: create a copy, and use 'diff' during tools build to
generate a (non-fatal) warning if the two versions diverge.

This makes sure that tooling always syncs up with kernel side changes - without
creating hard build failure dependencies.

Thanks,

Ingo