Re: [PATCH] Fix kexec reboot on ARM

From: Peter Chubb
Date: Wed Dec 14 2011 - 05:37:11 EST


>>>>> "Russell" == Russell King <- ARM Linux <linux@xxxxxxxxxxxxxxxx>> writes:

Russell> On Wed, Dec 14, 2011 at 08:08:02AM +0000, Russell King - ARM
Russell> Linux wrote:
>> On Wed, Dec 14, 2011 at 03:02:10PM +1100, Peter Chubb wrote:
>> >
>> > When kexec() runs, it eventually sets up a 1-to-1 memory map,
>> then > invokes cpu_reset(). When it invokes cpu_reset (which turns
>> > off the MMU), it does so at its virtual address. Across the code
>> that > disables the MMU, virtual and physical addresses have to be
>> the same, > otherwise after disabling the MMU, the PC is invalid.
>> >
>> > The simplest fix is to invoke cpu_reset() at its one-to-one
>> mapped > address.
>> >
>> > I've tested on KZM (arm v6) and Beagleboard (omap)
>>
>> NAK.
>>
>> Three reasons:
>>
>> 1. You've not signed-off the patch (please read
>> Documentation/SubmittingPatches) 2. pre-ARMv6 do not expect this,
>> and it will break where PHYS_OFFSET >= PAGE_OFFSET 3. Have you seen
>> what's already queued for the next merge window?

Russell> And 4. You didn't cc the linux-arm-kernel mailing list with
Russell> your patch.

Sure, last time I tried to cc linux-arm it bounced. And I wasn't
expecting this to be accepted yet (hence no signed-off-by: line), just
wanted comment.

If there's already a patch queued to fix this then fine.


--
Dr Peter Chubb http://www.gelato.unsw.edu.au peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au ERTOS within National ICT Australia
--
Dr Peter Chubb http://www.gelato.unsw.edu.au peterc AT gelato.unsw.edu.au
http://www.ertos.nicta.com.au ERTOS within National ICT Australia
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/