Skip to content

Dynamic kernel command-line

Alon Bar-Lev linux-arch lkml 1 version New

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest26 patches 0 repliesNew

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/26Dynamic kernel command-line - commoninclude/linux/init.h init/main.c+27 -70 replies
2/26Dynamic kernel command-line - alphaarch/alpha/kernel/setup.c+3 -30 replies
3/26Dynamic kernel command-line - armarch/arm/kernel/setup.c+3 -30 replies
4/26Dynamic kernel command-line - arm26arch/arm26/kernel/setup.c+3 -30 replies
5/26Dynamic kernel command-line - avr32arch/avr32/kernel/setup.c+3 -30 replies
6/26Dynamic kernel command-line - crisarch/cris/kernel/setup.c+3 -30 replies
7/26Dynamic kernel command-line - frvarch/frv/kernel/setup.c+3 -30 replies
8/26Dynamic kernel command-line - h8300arch/h8300/kernel/setup.c+3 -30 replies
9/26Dynamic kernel command-line - i386arch/i386/kernel/head.S arch/i386/kernel/setup.c+3 -30 replies
10/26Dynamic kernel command-line - ia64arch/ia64/kernel/efi.c arch/ia64/kernel/sal.c arch/ia64/kernel/setup.c+5 -50 replies
11/26Dynamic kernel command-line - m32rarch/m32r/kernel/setup.c+3 -30 replies
12/26Dynamic kernel command-line - m68karch/m68k/kernel/setup.c+1 -10 replies
13/26Dynamic kernel command-line - m68knommuarch/m68knommu/kernel/setup.c+3 -30 replies
14/26Dynamic kernel command-line - mipsarch/mips/kernel/setup.c+1 -10 replies
15/26Dynamic kernel command-line - pariscarch/parisc/kernel/setup.c arch/parisc/mm/init.c+6 -60 replies
16/26Dynamic kernel command-line - powerpcarch/powerpc/kernel/legacy_serial.c arch/powerpc/kernel/prom.c arch/powerpc/kernel/udbg.c +1 more+5 -50 replies
17/26Dynamic kernel command-line - ppcarch/ppc/kernel/setup.c arch/ppc/platforms/lopec.c arch/ppc/platforms/pplus.c +1 more+5 -50 replies
18/26Dynamic kernel command-line - s390arch/s390/kernel/setup.c+1 -10 replies
19/26Dynamic kernel command-line - sharch/sh/kernel/setup.c+3 -30 replies
20/26Dynamic kernel command-line - sh64arch/sh64/kernel/setup.c+3 -30 replies
21/26Dynamic kernel command-line - sparcarch/sparc/kernel/setup.c arch/sparc/kernel/sparc_ksyms.c+2 -20 replies
22/26Dynamic kernel command-line - sparc64arch/sparc64/kernel/setup.c arch/sparc64/kernel/sparc64_ksyms.c+2 -20 replies
23/26Dynamic kernel command-line - umarch/um/include/user_util.h arch/um/kernel/um_arch.c+2 -20 replies
24/26Dynamic kernel command-line - v850arch/v850/kernel/setup.c+3 -30 replies
25/26Dynamic kernel command-line - x86_64arch/x86_64/kernel/head64.c arch/x86_64/kernel/setup.c include/asm-x86_64/bootsetup.h+6 -60 replies
26/26Dynamic kernel command-line - xtensaarch/xtensa/kernel/setup.c+3 -30 replies

Reviews trailers per patch

3 of 26 patches have a Reviewed-by or Acked-by.

PatchHaavard SkinnemoenPaul Mundt
1/26
2/26
3/26
4/26
5/26A-b
6/26
7/26
8/26
9/26
10/26
11/26
12/26
13/26
14/26
15/26
16/26
17/26
18/26
19/26A-b
20/26A-b
21/26
22/26
23/26
24/26
25/26
26/26

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH 00/26] Dynamic kernel command-line

Hello,

This is take 3 of submission, I submit this patch once in a few monthes to collect some more signatures :) Until now, I got three:
- avr32
- sh
- sh64

I know this is not one of major priorities, but it should be simple enough to be reviewed and included.

I will also be happy to get a REJECT response, so I stop trying to get it included. Any suggestions of how to push this farward will also be appreciated.

Current implementation stores a static command-line buffer allocated to COMMAND_LINE_SIZE size. Most architectures stores two copies of this buffer, one for future reference and one for parameter parsing.

Current kernel command-line size for most architecture is much too small for module parameters, video settings, initramfs paramters and much more. The problem is that setting COMMAND_LINE_SIZE to a grater value, allocates static buffers.

In order to allow a greater command-line size, these buffers should be dynamically allocated or marked as init disposable buffers, so unused memory can be released.

This patch renames the static saved_command_line variable into boot_command_line adding __initdata attribute, so that it can be disposed after initialization. This rename is required so applications that use saved_command_line will not be affected by this change.

It reintroduces saved_command_line as dynamically allocated buffer to match the data in boot_command_line.

It also mark secondary command-line buffer as __initdata, and copies it to dynamically allocated static_command_line buffer components may hold reference to it after initialization.

This patch is for linux-2.6.19 and is divided to target each architecture. I could not check this in any architecture so please forgive me if I got it wrong.

The per-architecture modification is very simple, use boot_command_line in place of saved_command_line. The common code is the change into dynamic command-line.

---