Re: [PATCH] THE LINUX/I386 BOOT PROTOCOL - Breaking the 256 limit(ping)

From: Alon Bar-Lev
Date: Wed Aug 30 2006 - 13:50:52 EST


On Wed, 30 Aug 2006 19:31:14 +0200
Andi Kleen <ak@xxxxxxx> wrote:

> On Wednesday 30 August 2006 19:06, Alon Bar-Lev wrote:
>
> > >
> > > And the other thing is that this will cost memory. Either make
> > > it dependend on !CONFIG_SMALL or fix the boot code to save the
> > > command line into a kmalloc'ed buffer of the right size and
> > > __init the original one
> >
> > I don't mind doing either... Any preference for one of them? The
> > kmalloc approach seems nicer..
>
> kmalloc is better yes. You just have to do it after kmalloc is up
> and running and make sure the users before reference the __init'ed
> version. I suspect only /proc/cmdline will need the kmalloc version
> after booting, nobody else should look at the command line.
>
> -Andi

This is not entirely true...
All architectures sets saved_command_line variable...
So I can add __init to the saved_command_line and
copy its contents into kmalloced persistence_command_line at
main.c.

Then the following files should be modified to use the new kmalloced variable:

./drivers/sbus/char/openprom.c: char *buf = saved_command_line;
./fs/proc/kcore.c: strncpy(prpsinfo.pr_psargs, saved_command_line, ELF_PRARGSZ);
./fs/proc/proc_misc.c: len = sprintf(page, "%s\n", saved_command_line);

Have I got it right?

Best Regards,
Alon Bar-Lev.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/