Messages in this thread | | | Date | Sun, 27 Aug 2006 22:59:53 +0300 | From | "Alon Bar-Lev" <> | Subject | Re: [PATCH] THE LINUX/I386 BOOT PROTOCOL - Breaking the 256 limit (ping) |
| |
On 8/27/06, Andi Kleen <ak@suse.de> wrote: > Just increasing that constant caused various lilo setups to not boot > anymore. I don't know who is actually to blame, just wanting to > point out that this "obvious" patch isn't actually that obvious. > > -Andi >
Hello,
lilo has its own COMMAND_LINE_SIZE constant. It is not depended on the kernel one.
lilo-22.7 lilo.h: #define COMMAND_LINE_SIZE 256 /* CL_LENGTH */
lilo-22.7.2 lilo.h: #define COMMAND_LINE_SIZE 512 /* CL_LENGTH */
So at worse case scenario it passes 256 bytes into the kernel truncated with null terminated. Best case scenario it passes 512 bytes. Anyway... As long as you don't modify lilo, the kernel can expect what-ever command-line length it wishes and truncate it to match its own COMMAND_LINE_SIZE.
Please notice that we modify the kernel so it can accept long command lines at boot protocol >= 2.02, but we don't modify lilo behavior. So lilo user will not be able to use the long command line size, until lilo is modified to support it.
There is also a problem with grub, I've written a patch for it: https://savannah.gnu.org/bugs/?func=detailitem&item_id=13606
Best Regards, Alon Bar-Lev. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |