On Wednesday 02 August 2006 06:33, Rusty Russell wrote: > On Wed, 2006-08-02 at 06:21 +0200, Andi Kleen wrote: > > > I think you misunderstand the purpose of parse_early_param? It is > > > designed to be called directly by the arch at some point (it is > > > idempotent, so the second call in init/main.c does nothing if the arch > > > has called it). ie. in i386, it replaces parse_cmdline_early(). > > > > Ah I didn't realize that. But why is there a second call in init/main.c? > > Looks like a big hack to me. Someone was too lazy to add it to all architectures? > > Yes. Someone == me. I didn't want to hack it into all archs, I wanted > archs to actually use it, and you can see that's not a trivial patch... > > Once all archs use it, we can probably clean up setup_arch() not to take > the char** and simply use the global saved_command_line directly. At > this rate, that'll be around 2012 8) Please just make a proper patch - either add a call to it to all setup_archs, or add a call to before setup_arch in init/main.c. While such ifdefs for specific architecture hacks are more popular lately it doesn't mean they are a good idea. I hope there aren't any existing architectures that use it in the middle of setup_arch or rely on it being after setup_arch. -Andi