mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH 0/5] boot: implement devboot in C
@ 2026-10-30 14:13 Sascha Hauer
  2026-10-30 14:13 ` [PATCH 1/5] boot: report the exit status of failing boot scripts Sascha Hauer
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Sascha Hauer @ 2026-10-30 14:13 UTC (permalink / raw)
  To: BAREBOX

devboot is a script on top of the boot command, which makes it hard to
integrate: Kernel command line fragments need a dedicated namespace to be
removed again, and booting with devboot by default needs a special boot
target. Also, boot overrides get lost when a boot script calls boot or
bootm itself.

This series hands overrides on to whatever a boot entry boots and turns
devboot into what it really is, an option to the boot command: boot -D,
or global.boot.devboot=1 to enable it by default. The devboot command
remains as a shorthand for boot -D.

The series is based on the "boot: UAF and double free fixes", "Add and
use file_exists() helper" and "boot: revert boot related globalvars after
booting" series.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
Sascha Hauer (5):
      boot: report the exit status of failing boot scripts
      hush: export source_script()
      boot: hand overrides on to nested boots and the bootm command
      boot: implement devboot in C
      sandbox: defconfig: enable boot overrides and devboot

 Documentation/user/devboot.rst            |  76 +++++++-----
 arch/sandbox/configs/sandbox_defconfig    |   2 +
 commands/boot.c                           |  28 ++++-
 commands/bootm.c                          |   3 +-
 common/Kconfig                            |  12 +-
 common/Makefile                           |   1 +
 common/boot.c                             |  63 ++++++----
 common/bootchooser.c                      |  13 +-
 common/bootm.c                            |  22 +++-
 common/devboot.c                          | 197 ++++++++++++++++++++++++++++++
 common/hush.c                             |  17 ++-
 defaultenv/defaultenv-2-base/bin/devboot  |  52 +-------
 defaultenv/defaultenv-2-base/boot/devboot |   8 --
 include/boot.h                            |   9 ++
 include/bootchooser.h                     |   2 +-
 include/bootm.h                           |   3 +
 include/devboot.h                         |  31 +++++
 include/shell.h                           |   8 ++
 test/py/test_boot_overrides.py            |  92 ++++++++++++++
 test/py/test_boot_script.py               |  13 ++
 test/py/test_devboot.py                   | 131 ++++++++++++++++++++
 21 files changed, 653 insertions(+), 130 deletions(-)
---
base-commit: e23fbb0ea940ba8b0f7f153297cb48c39fcbf41d
change-id: 20261030-devboot-af494560e196

Best regards,
-- 
Sascha Hauer <s.hauer@pengutronix.de>




^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-10-30 15:19 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-30 14:13 [PATCH 0/5] boot: implement devboot in C Sascha Hauer
2026-10-30 14:13 ` [PATCH 1/5] boot: report the exit status of failing boot scripts Sascha Hauer
2026-10-30 14:13 ` [PATCH 2/5] hush: export source_script() Sascha Hauer
2026-10-30 14:13 ` [PATCH 3/5] boot: hand overrides on to nested boots and the bootm command Sascha Hauer
2026-10-30 14:13 ` [PATCH 4/5] boot: implement devboot in C Sascha Hauer
2026-10-30 14:13 ` [PATCH 5/5] sandbox: defconfig: enable boot overrides and devboot Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox