[Top] [All Lists]


To: linux-mips <>
Subject: early_initcall
From: Yoichi Yuasa <>
Date: Wed, 8 Dec 2004 23:06:45 +0900
Original-recipient: rfc822;

Since early_initcall is not defined in generic 2.6.10-rc3,
MIPS has a problem in generic kernel.

I investigated why early_initcall is not defined in generic kernel.
I found a following mail in LKML.

We need to move early_initcall to MIPS-specific header file.
Where do you think is a suitable header file for it?


---- Andrew's comment ----
From: Andrew Morton <>
To: Samium Gromoff <>
Cc:, Ralf Baechle <>
Subject: Re: [2.6.5][MIPS] oneliners somehow not made it into mainline [3/3]
Date:   Mon, 12 Apr 2004 14:06:28 -0700
X-Mailer: Sylpheed version 0.9.7 (GTK+ 1.2.10; i586-pc-linux-gnu)

Samium Gromoff <> wrote:
> Without this one it fails to run the earlyinitcall stuff, and hence
> explodes at some point.
> diff -urN -X './#cdiff.pattern' ./linux-2.6.5/include/linux/init.h 
> ./mc-2.6.5/include/linux/init.h
> --- ./linux-2.6.5/include/linux/init.h  2004-04-12 16:07:45.000000000 +0400
> +++ ./mc-2.6.5/include/linux/init.h     2004-04-12 18:05:28.000000000 +0400
> @@ -83,6 +83,7 @@
>         static initcall_t __initcall_##fn __attribute_used__ \
>         __attribute__((__section__(".initcall" level ".init"))) = fn
> +#define early_initcall(fn)             __define_initcall(".early1",fn)
>  #define core_initcall(fn)              __define_initcall("1",fn)
>  #define postcore_initcall(fn)          __define_initcall("2",fn)
>  #define arch_initcall(fn)              __define_initcall("3",fn)

early_initcall() is a mips-specific thing.  If we add this macro to
<linux/init.h> then someone will use it in generic code and all the other
architectures explode.

We need to either make this entirely mips-private, or rework the mips code
to not use it at all, or justify its introduction and then introduce it for
all architectures.

<Prev in Thread] Current Thread [Next in Thread>
  • early_initcall, Yoichi Yuasa <=