On 02/20/2012 11:13 AM, Nikolai Zhubr wrote:
Hello all,

I'm running both openwrt and debian on a mips-based wndr3800 netgear router/ap
and I'm using kexec to arrange kind of dual-boot in a safe and comfortable 
manner.

Now, I've found that the following is critical for kexec to actually work:
--- arch/mips/kernel/machine_kexec.c.orig 2012-02-08 01:58:13.000000000 +0300
+++ arch/mips/kernel/machine_kexec.c 2012-02-20 22:19:11.000000000 +0300
@@ -52,7 +52,7 @@
reboot_code_buffer =
(unsigned long)page_address(image->control_code_page);

- kexec_start_address = image->start;
+ kexec_start_address = (unsigned long) phys_to_virt(image->start);
kexec_indirection_page =
(unsigned long) phys_to_virt(image->head & PAGE_MASK);

Right.  The kernel I'm using has this.  But if you look back a bit through
the list, you'll see I had problems on ar71xx still - on Buffalo G300NH.
There was some grief in the serial handling, and I had to go via u-boot
to completely reset things.  I mention this in case anyone else is
trying kexec.


_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to