On Tue, 22 Nov 2016 21:21:14 +1100 Stephen Rothwell <s...@canb.auug.org.au> wrote:
> Hi all, > > On Tue, 22 Nov 2016 19:58:32 +1100 Stephen Rothwell <s...@canb.auug.org.au> > wrote: > > > > After merging the powerpc tree, today's linux-next build (powerpc > > allyesconfig) failed like this: > > > > Inconsistent kallsyms data > > Try make KALLSYMS_EXTRA_PASS=1 as a workaround > > > > Which is a vast improvement. I'll try adding 'KALLSYMS_EXTRA_PASS=1' > > later and see how it goes. It would be nice not to need it, though. > > It build with KALLSYMS_EXTRA_PASS=1 on the command line. > Yay! The inconsistent kallsyms data is not something we're doing wrong or toolchain bug so much as an inherent flaw in how kallsyms are done. Basically the allyesconfig kallsyms section expands the kernel so much that a subsequent linking requires even more stubs, which adds more symbols, which means the next kallsyms will be a different size, which means or offsets will be wrong :) In theory I think it could actually be triggered on smaller kernels if the size was just right. I'm sort of looking at ways to fix it: https://patchwork.ozlabs.org/patch/684910/ Hopefully will get something in 4.10. Worst case we could detect the kallsyms size change and do another pass in response without slowing down the case where it's not required. Hmm, that might be the best thing to do for a first pass. Thanks, Nick