On 11/30/2016 01:36 PM, Linus Torvalds wrote:
On Wed, Nov 30, 2016 at 10:28 AM, Prarit Bhargava <prarit@xxxxxxxxxx> wrote:
]>
In my case I tracked this to commit 3637efb00864 ("x86/mce: Add PCI quirks to
identify Xeons with machine check recovery") which adds the include for
generated/autoksyms.h.
Ok, that at least makes some sense. The other blamed commit did not
seem to possibly make a difference.
Searching LKML and I came across a report from Ken Moffat from a month ago:
http://marc.info/?l=linux-kernel&m=147794681124332&w=2
Does a "make clean" get rid of it forever? Or does it come back?
It comes back. The steps to reproduce this are:
1. checkout latest linux.git
2. make -j112
(IOW, it occurs 100% of the time for me on a clean tree.)
To work around the bug I have to do
1. checkout latest linux.git
2. comment out the include for generated/autoksyms.h at include/linux/export.h:81
3. compile with -j112
This fails loudly, but then I do
4. uncomment the include for generated/autoksyms.h at include/linux/export.h:81
5. make -j112
and this completes with a bootable kernel AFAICT.
If it's a one-time dependency issue that is because some header
dependency addition that the automatic dependency generator hadn't
caught, that might explain a bisection failure too: once the file
happens to get rebuilt (and the dependencies re-done), it starts
working even though the "happens to be rebuilt" had nothing to do with
the original bug.
Hopefully the linux-kbuild folks might be able to point us in the right
direction for a fix.