Re: [kbuild-all] [PATCH v3 1/3] mfd: intel_soc_pmic: Fix a mess with compilation units

From: Fengguang Wu
Date: Mon Apr 03 2017 - 07:06:46 EST


On Mon, Apr 03, 2017 at 12:26:54PM +0300, Andy Shevchenko wrote:
On Mon, Apr 3, 2017 at 12:20 PM, Lee Jones <lee.jones@xxxxxxxxxx> wrote:
On Sun, 02 Apr 2017, Andy Shevchenko wrote:

On Sun, Apr 2, 2017 at 11:03 PM, kbuild test robot <lkp@xxxxxxxxx> wrote:
> Hi Andy,
>
> [auto build test ERROR on ljones-mfd/for-mfd-next]
> [also build test ERROR on v4.11-rc4 next-20170331]
> [if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

Thank you for report, though...

>
> url: https://github.com/0day-ci/linux/commits/Andy-Shevchenko/mfd-intel_soc_pmic-Fix-a-mess-with-compilation-units/20170320-153539
> base: https://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd.git for-mfd-next
> config: tile-allyesconfig (attached as .config)
> compiler: tilegx-linux-gcc (GCC) 4.6.2
> reproduce:
> wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> # save the attached .config to linux build tree

> make.cross ARCH=tile

...I doubt how below is related to my patch. This is obvious x86 code
which was initially submitted without
depend on X86
line in corresponding Kconfig.

I think you should probably specify the architecture in the Kconfig
entry, or else some `randconfig`s will fail.

Yes, I understand how to fix this, though it's not a problem of this
patch per se.

Fengguang, is there any possible way to determine the relation between
an error and a root cause change?

Andy, our 0day build error reports are all bisected ones. It means the
error happens since the reported patch/commit, which is either
responsible for the root cause, or somehow triggers (or changes the
exact form of) an old bug.

I just manual confirmed the bisect is correct:

=============== commit 162c61d1a ===============
/home/wfg/linux
HEAD is now at 162c61d... mfd: intel_soc_pmic: Fix a mess with compilation units
/home/wfg/linux/obj-compiletest

make ARCH=tile allyesconfig
make ARCH=tile drivers/mfd/

!!! BUILD ERROR !!!
make ARCH=tile M=drivers/mfd/

!!! BUILD ERROR !!!
grep -a -F drivers/mfd/ /tmp/build-err-162c61d1a76aa5ccfb398225b3f6f2e896fb58b0-wfg --color
../drivers/mfd/intel_soc_pmic_bxtwc.c:24:31: fatal error: asm/intel_pmc_ipc.h: No such file or directory
compilation terminated.
make[2]: *** [drivers/mfd/intel_soc_pmic_bxtwc.o] Error 1
make[2]: Target '__build' not remade because of errors.
make[1]: *** [drivers/mfd/] Error 2
make: *** [sub-make] Error 2
make[2]: *** No rule to make target 'drivers/mfd//intel_soc_pmic_bxtwc.o', needed by 'drivers/mfd//built-in.o'.
make[2]: Target '__build' not remade because of errors.
make[1]: *** [_module_drivers/mfd/] Error 2
make[1]: Target '_all' not remade because of errors.
make: *** [sub-make] Error 2

=============== PREV commit e93c10211d03c35271896b03a40d3eca4a674770 ===============
/home/wfg/linux
Previous HEAD position was 162c61d... mfd: intel_soc_pmic: Fix a mess with compilation units
HEAD is now at e93c102... mfd: lpc_ich: Enable watchdog on Intel Apollo Lake PCH
/home/wfg/linux/obj-compiletest

make ARCH=tile allyesconfig
make ARCH=tile drivers/mfd/

make ARCH=tile M=drivers/mfd/

grep -a -F drivers/mfd/ /tmp/build-err-e93c10211d03c35271896b03a40d3eca4a674770-wfg --color

Thanks,
Fengguang