diff options
author | Paul Sokolovsky <pmiscml@gmail.com> | 2008-02-16 03:00:52 +0000 |
---|---|---|
committer | Paul Sokolovsky <pmiscml@gmail.com> | 2008-02-16 03:00:52 +0000 |
commit | f53ea006bcf4e938ed1c569080472dd05dc84b4d (patch) | |
tree | 21aa85e3dd72dfc4cfabfe7b96395cd0b4ae9081 /packages/initrdscripts/files/87-kexecboot.sh | |
parent | 2c9beab0a15cccf8a519a3407fbe0c09ff6f21ec (diff) |
initramfs-module-bootmenu, initramfs-module-kexecboot: Fixes for kexecing.
* Be sure to pass original command line contents to new kernel.
* Add protection against infinite recursive kexecing.
Diffstat (limited to 'packages/initrdscripts/files/87-kexecboot.sh')
-rw-r--r-- | packages/initrdscripts/files/87-kexecboot.sh | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/packages/initrdscripts/files/87-kexecboot.sh b/packages/initrdscripts/files/87-kexecboot.sh index ab281577d4..9232934f98 100644 --- a/packages/initrdscripts/files/87-kexecboot.sh +++ b/packages/initrdscripts/files/87-kexecboot.sh @@ -2,16 +2,18 @@ # Allow kexecing to kernel in rootfs if [ -n "$BOOT_ROOT" -a -f "$BOOT_ROOT/boot/zImage" ]; then - echo "Kernel found in rootfs:" - ls -l "$BOOT_ROOT/boot/zImage" - initramfs="" - if [ -f "$BOOT_ROOT/boot/initramfs.bin" ]; then - echo "Initramfs found in rootfs:" - ls -l "$BOOT_ROOT/boot/initramfs.bin" - initramfs="--initrd=$BOOT_ROOT/boot/initramfs.bin" + if ! expr "$CMDLINE" : '.*nokexec'; then + echo "Kernel found in rootfs:" + ls -l "$BOOT_ROOT/boot/zImage" + initramfs="" + if [ -f "$BOOT_ROOT/boot/initramfs.bin" ]; then + echo "Initramfs found in rootfs:" + ls -l "$BOOT_ROOT/boot/initramfs.bin" + initramfs="--initrd=$BOOT_ROOT/boot/initramfs.bin" + fi + echo /usr/sbin/kexec -f "$BOOT_ROOT/boot/zImage" $initramfs --command-line="$CMDLINE nokexec" + sleep 10 + /usr/sbin/kexec -f "$BOOT_ROOT/boot/zImage" $initramfs --command-line="$CMDLINE nokexec" + sleep 10000 fi - echo /usr/sbin/kexec -f "$BOOT_ROOT/boot/zImage" $initramfs --command-line="$CMDLINE" - sleep 10 - /usr/sbin/kexec -f "$BOOT_ROOT/boot/zImage" $initramfs --command-line="$CMDLINE" - sleep 10000 fi |