Re: Build regressions/improvements in v3.10

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Marc,

On Sat, Jul 6, 2013 at 8:07 AM, Marc Gauthier
<Marc.Gauthier@xxxxxxxxxxxxx> wrote:
> Geert Uytterhoeven wrote:
>> On Tue, Jul 2, 2013 at 8:34 PM, Bjorn Helgaas
>> <bhelgaas@xxxxxxxxxx> wrote:
>> >>   + warning: vmlinux.o(.text+0x1ad7a4): Section mismatch
>> in reference from the function pwmchip_add() to the function
>> .init.text:pcibios_fixup_bus():  => N/A
>> >>   + warning: vmlinux.o(.text+0x1b18d8): Section mismatch
>> in reference from the function pci_scan_child_bus() to the
>> function .init.text:pcibios_fixup_bus():  => N/A

Bjorn: both warnings went away after your patch
(http://permalink.gmane.org/gmane.linux.kernel.pci/23678). Thanks!

>> > I understand the second warning, but not the first (reference from
>> > pwmchip_add() to pcibios_fixup_bus()).  I don't think pwmchip_add()
>> > calls pcibios_fixup_bus().  Is the pwmchip_chip() function name
>> > inexact, or is there some other problem here?
>>
>> Indeed, that's weird.
>>
>> This happened with xtensa-allmodconfig.
>> I compiled my own xtensa-allmodconfig kernel, and it happens
>> there, too.
>>
>> If I'm not mistaken, the hex address between parentheses should match
>> the "from" function, right?
>> After disassembly ("xtensa-linux-objdump -D vmlinux"), the addresses
>> didn't seem to match the function names at all.
>> So it may be an issue with the toolchain?
>
> The Xtensa linker, by default, does some code shrinkage
> (some of the "relaxations") after applying relocations,
> causing code to move around.  This can sometimes cause
> error/warning messages to use incorrect addresses.
> (Not trivial to fix in the linker.)
>
> There's a config option LD_NO_RELAX to disable linker
> relaxation.  If using this option fixes the names, it
> may be this issue.

This was allmodconfig, so CONFIG_LD_NO_RELAX was set.
After disabling it, it fails with:

net/built-in.o: In function `net_rx_action':
net/core/dev.c:4194:(.text+0x11b91): dangerous relocation: call8:
misaligned call target: (.text.unlikely+0x47)
net/built-in.o: In function `raw_seqcount_begin':
include/linux/seqlock.h:106:(.text+0x132be): dangerous relocation:
call8: misaligned call target: (.text.unlikely+0x47)

Similar to the defconfig on
http://kisskb.ellerman.id.au/kisskb/buildresult/9070101/.

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux