[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080617172604.740a4ae3@linux360.ro>
Date: Tue, 17 Jun 2008 17:26:04 +0300
From: Eduard - Gabriel Munteanu <eduard.munteanu@...ux360.ro>
To: Mathieu Desnoyers <compudj@...stal.dyndns.org>
Cc: tzanussi@...il.com, linux-kernel@...r.kernel.org,
penberg@...helsinki.fi, akpm@...ux-foundation.org,
torvalds@...ux-foundation.org
Subject: Re: [PATCH 2/3] Better interface for hooking early initcalls.
On Tue, 17 Jun 2008 10:07:42 -0400
Mathieu Desnoyers <compudj@...stal.dyndns.org> wrote:
> I am not sure it's worth it trying to define a generic "early"
> initcall, since definition of "how early it is" may change with time.
>
> Currently, it's earlier than SMP init, but later on, it could become
> earlier than mm init. If there are only few users of this, and given
> that they must be designed "knowing" how early they are initialized
> wrt other subsystems, I think it would make sense to call them
> directly from the init code without putting them in a "early
> initcall" category.
I designed this to be "same as other core initcalls, but before SMP".
This isn't a replacement we could use for very early code, such as
kmem_cache_init(). Take into account that CPU hotplug requires this, as
stated in the docs, I quote:
> You need to call register_cpu_notifier() from your init function.
> Init functions could be of two types:
> 1. early init (init function called when only the boot processor is online).
> 2. late init (init function called _after_ all the CPUs are online).
> why not do_one_initcall(*call); ?
I haven't actually tried do_one_initcall() at that point, but it seemed
it messed up with preemption and IRQs. Will check and see if causes any
problems and resubmit if it works. But you do have a point, debugging
should be doable for these initcalls too.
> Mathieu
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists