summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-10-14 18:39:20 +0000
committerflorian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>2007-10-14 18:39:20 +0000
commit244f11bc0d477421ea4e141daadd27646f94e72f (patch)
tree33c1ef654d24c3c8d7e28199238c2cd0b8074020
parentc86bdad40d07025c63140d5f10fbe35276dc4a52 (diff)
Allow kexec to directly use the kernel exposed in a mtd partition and reboot using the right command line
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9322 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/kexec-tools/Makefile1
-rw-r--r--package/kexec-tools/files/kexec.sh5
2 files changed, 6 insertions, 0 deletions
diff --git a/package/kexec-tools/Makefile b/package/kexec-tools/Makefile
index d31aeaa856..6274cb81c3 100644
--- a/package/kexec-tools/Makefile
+++ b/package/kexec-tools/Makefile
@@ -48,6 +48,7 @@ define Package/kexec-tools/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kexec $(1)/usr/bin/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/kdump $(1)/usr/bin/
+ $(INSTALL_BIN) ./files/kexec.sh $(1)/usr/bin/kexec.mtd
endef
$(eval $(call BuildPackage,kexec-tools))
diff --git a/package/kexec-tools/files/kexec.sh b/package/kexec-tools/files/kexec.sh
new file mode 100644
index 0000000000..8871d8aeb9
--- /dev/null
+++ b/package/kexec-tools/files/kexec.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+. /etc/functions.sh
+cmdline="$(cat /proc/cmdline)"
+kernel="$(find_mtd_part kernel)"
+kexec -l $kernel --command-line=$cmdline