[PATCH RFC v2 bootconfig 0/3] Distinguish bootloader and embedded kernel parameters

Paul E. McKenney posted 3 patches 2 years, 1 month ago
Documentation/filesystems/proc.rst   |    2 ++
b/Documentation/filesystems/proc.rst |    3 ++-
b/fs/proc/cmdline.c                  |   13 +++++++++++++
b/include/linux/init.h               |    3 ++-
b/init/main.c                        |    2 +-
5 files changed, 20 insertions(+), 3 deletions(-)
[PATCH RFC v2 bootconfig 0/3] Distinguish bootloader and embedded kernel parameters
Posted by Paul E. McKenney 2 years, 1 month ago
On Thu, Jul 27, 2023 at 08:35:10PM -0700, Paul E. McKenney wrote:
Hello!

This series provides a /proc interface parallel to /proc/cmdline that
provides only those kernel boot parameters that were provided by the
bootloader in a new /proc/cmdline_load.  This is especially important
when these parameters are presented to the boot loader by automation
that might gather them from diverse sources, and also when a kexec-based
reboot process pulls the kernel boot parameters from /proc.  If such a
reboot process uses /proc/cmdline, the kernel parameters from the image
are replicated on every reboot, which can be frustrating when the new
kernel has different embedded kernel boot parameters.

Why put these in /proc?  Because they is quite similar to /proc/cmdline,
so it makes sense to put it in the same place that /proc/cmdline is
located.

1.	Update /proc/cmdline documentation to include boot config.

2.	fs/proc: Add /proc/cmdline_load for boot loader arguments.

3.	Add /proc/bootconfig to proc.rst.

Changes since v1:

o	Dropped /proc/cmdline_image in favor of the existing
	/proc/bootconfig.

o	Pulled in fixes from Stephen and Arnd.

o	Added documentation for /proc/bootconfig.

						Thanx, Paul

------------------------------------------------------------------------

 Documentation/filesystems/proc.rst   |    2 ++
 b/Documentation/filesystems/proc.rst |    3 ++-
 b/fs/proc/cmdline.c                  |   13 +++++++++++++
 b/include/linux/init.h               |    3 ++-
 b/init/main.c                        |    2 +-
 5 files changed, 20 insertions(+), 3 deletions(-)