]> xenbits.xen.org Git - xenclient/kernel.git/commit
commit ee5bfa642a0d4b0f6ec6200bf96e5e647f93fcdb git-88d20328cd66ee05f9b7f4d414640700db69d82b
authort_jeang <devnull@localhost>
Tue, 6 Jan 2009 12:05:21 +0000 (12:05 +0000)
committert_jeang <devnull@localhost>
Tue, 6 Jan 2009 12:05:21 +0000 (12:05 +0000)
commitc0a5acf90c16070c1a7cd8fca95c7df7ccf1dc7c
tree05a7550e6c85de632720eae0da75c6be6d48b1bb
parent46f9a2294adff4e5034d21e75eb3ccd1f0305fab
commit ee5bfa642a0d4b0f6ec6200bf96e5e647f93fcdb
Author: Vivek Goyal <vgoyal@in.ibm.com>
Date:   Tue Feb 13 13:26:22 2007 +0100

    [PATCH] generic: Break init() in two parts to avoid MODPOST warnings

    o init() is a non __init function in .text section but it calls many
      functions which are in .init.text section. Hence MODPOST generates lots
      of cross reference warnings on i386 if compiled with CONFIG_RELOCATABLE=y

    WARNING: vmlinux - Section mismatch: reference to .init.text:smp_prepare_cpus from .text between 'init' (at offset 0xc0101049) and 'rest_init'
    WARNING: vmlinux - Section mismatch: reference to .init.text:migration_init from .text between 'init' (at offset 0xc010104e) and 'rest_init'
    WARNING: vmlinux - Section mismatch: reference to .init.text:spawn_ksoftirqd from .text between 'init' (at offset 0xc0101053) and 'rest_init'

    o This patch breaks down init() in two parts. One part which can go
      in .init.text section and can be freed and other part which has to
      be non __init(init_post()). Now init() calls init_post() and init_post()
      does not call any functions present in .init sections. Hence getting
      rid of warnings.

Signed-off-by: Vivek Goyal <vgoyal@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Andi Kleen <ak@suse.de>
init/main.c