question about cpm_uart_cpm2.c "Section mismatch in reference from the function cpm_uart_allocbuf"

Scott Wood scottwood at freescale.com
Thu May 6 03:38:51 EST 2010


On Wed, May 05, 2010 at 07:19:18PM +0800, xiaokun wrote:
> I am using MPC8272ADS_20080623-ltib.iso from freescale
> 
> The Linux Kernel is 2.6.25.
> 
> When I make uImage, the error message is :
> 
> WARNING: vmlinux.o(.text+0x159450): Section mismatch in reference from the function cpm_uart_allocbuf() to the function .init.text:__alloc_bootmem()
> The function cpm_uart_allocbuf() references
> the function __init __alloc_bootmem().
> This is often because cpm_uart_allocbuf lacks a __init
> annotation or the annotation of __alloc_bootmem is wrong.

That is expected, ignore it.

The function is called early enough to need to use bootmem, and called again
too late for __init.  It determines which to use based on whether it was
called to set up the console or not.

Note that the problem no longer exists in current kernels because kmalloc is
usable earlier.

-Scott


More information about the Linuxppc-dev mailing list