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

From: H. Peter Anvin
Date: Thu Aug 31 2006 - 13:38:58 EST


Bodo Eggert wrote:
Andi Kleen <ak@xxxxxxx> wrote:
On Wednesday 30 August 2006 20:59, H. Peter Anvin wrote:
Alon Bar-Lev wrote:

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.

My opinion is that you should change saved_command_line (which already
implies a copy) to be the kmalloc'd version and call the fixed-sized
buffer something else.
It might be safer to rename everything. Then all users could be caught
and audited. This would ensure saved_command_line is not accessed
before the kmalloc'ed copy exists.

If you set the new *saved_cmdline=saved_cmdline_init, the users don't need
to be adjusted at all, and you won't have trouble with code that may be
run before or after kmallocking (if it exists).

True for C code, but not for assembly.

-hpa

-
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/