fix(boot): avoid ext3 rootfstype and remount root readonly before kexec

This commit is contained in:
vxtls 2026-03-09 09:09:35 -04:00
parent 6b8aa73507
commit d0c97c119e
3 changed files with 10 additions and 4 deletions

View file

@ -830,9 +830,9 @@ def _qemu_arg_list_for_kernel(args, generator, target, size):
'-append', '-append',
] ]
if args.interactive: if args.interactive:
arg_list += ['consoleblank=0 earlyprintk=vga root=/dev/sda1 rootfstype=ext3 init=/init rw'] arg_list += ['consoleblank=0 earlyprintk=vga root=/dev/sda1 init=/init rw']
else: else:
arg_list += ['console=ttyS0 earlycon=uart8250,io,0x3f8,115200n8 root=/dev/sda1 rootfstype=ext3 init=/init rw'] arg_list += ['console=ttyS0 earlycon=uart8250,io,0x3f8,115200n8 root=/dev/sda1 init=/init rw']
return arg_list return arg_list

View file

@ -26,4 +26,7 @@ else
kexec -l "${current_kernel}" --console-serial \ kexec -l "${current_kernel}" --console-serial \
--append="console=ttyS0 root=/dev/sda1 init=/init rw rootwait" --append="console=ttyS0 root=/dev/sda1 init=/init rw rootwait"
fi fi
sync
echo u > /proc/sysrq-trigger || true
mount -o remount,ro / || true
kexec -e kexec -e

View file

@ -23,10 +23,13 @@ else
# kexec time # kexec time
if [ "${BARE_METAL}" = True ]; then if [ "${BARE_METAL}" = True ]; then
kexec -l "/boot/vmlinuz" \ kexec -l "/boot/vmlinuz" \
--append="root=/dev/sda1 rootfstype=ext3 init=/init rw rootwait" --append="root=/dev/sda1 init=/init rw rootwait"
else else
kexec -l "/boot/vmlinuz" --console-serial \ kexec -l "/boot/vmlinuz" --console-serial \
--append="console=ttyS0 root=/dev/sda1 rootfstype=ext3 init=/init rw rootwait" --append="console=ttyS0 root=/dev/sda1 init=/init rw rootwait"
fi fi
sync
echo u > /proc/sysrq-trigger || true
mount -o remount,ro / || true
kexec -e kexec -e
fi fi