[BUG] Build error for 4.15-rc3 kernel caused by patch "kbuild: Add a cache for generated variables"

From: Yang Shi
Date: Sat Dec 16 2017 - 17:35:55 EST

Hi folks,

I just upgraded gcc to 6.4 on my centos 7 machine by Arnd's suggestion. But, I ran into the below compile error with 4.15-rc3 kernel:

In file included from ./include/uapi/linux/uuid.h:21:0,
from ./include/linux/uuid.h:19,
from ./include/linux/mod_devicetable.h:12,
from scripts/mod/devicetable-offsets.c:2:
./include/linux/string.h:8:20: fatal error: stdarg.h: No such file or directory
#include <stdarg.h>

I bisected to commit 3298b690b21cdbe6b2ae8076d9147027f396f2b1 ("kbuild: Add a cache for generated variables"). Once I revert this commit, kernel build is fine.

gcc 4.8.5 is fine to build kernel with this commit.

I'm not quite sure if this is a bug or my gcc install is skewed although it can build kernel without that commit since that commit might exacerbate the case.

Any hint is appreciated