[PATCH v4 0/8] MMU disabling code and kexec fixes
Will Deacon
will.deacon at arm.com
Tue Aug 23 17:46:44 EDT 2011
Hello,
This is version 4 of the patches originally posted here:
v1: http://lists.infradead.org/pipermail/linux-arm-kernel/2011-June/052157.html
v2: http://lists.infradead.org/pipermail/linux-arm-kernel/2011-June/052559.html
v3: http://lists.infradead.org/pipermail/linux-arm-kernel/2011-June/053252.html
There are many changes since v3. Notably:
- Support for Thumb-2
- Based on 3.1-rc3 (now that some of the previous patches have
been merged)
- The reserved stack page now sits below swapper and is reserved
by memblock during memory init. This has the advantage of being
at a known physical address for a platform, which will be helpful
for non-hotplug SMP booting.
Currently, SMP kexec relies on platform_cpu_kill (a CPU hotplug callback)
doing the right thing. I'm working on a generic SMP soft reboot implementation
but this isn't quite working yet (and my git repo is predictably offline
at the moment so I can't provide a link to the patches).
All feedback welcome.
Thanks,
Will
Will Deacon (8):
ARM: proc-v7: disable SCTLR.TE when disabling MMU
ARM: kexec: ensure new kernel is entered in ARM state
ARM: lib: add switch_stack function for safely changing stack
ARM: idmap: add header file for identity mapping functions
ARM: reset: allow kernelspace mappings to be flat mapped during reset
ARM: reset: add reset functionality for jumping to a physical address
ARM: kexec: use arm_machine_reset for branching to the reboot buffer
ARM: stop: execute platform callback from cpu_stop code
arch/arm/Kconfig | 2 +-
arch/arm/include/asm/idmap.h | 15 +++++++
arch/arm/include/asm/pgtable.h | 3 -
arch/arm/include/asm/system.h | 1 +
arch/arm/kernel/machine_kexec.c | 14 +------
arch/arm/kernel/process.c | 76 ++++++++++++++++++++++++++++++++++--
arch/arm/kernel/relocate_kernel.S | 2 +-
arch/arm/kernel/smp.c | 5 ++
arch/arm/lib/Makefile | 3 +-
arch/arm/lib/switch_stack.S | 44 +++++++++++++++++++++
arch/arm/mm/idmap.c | 43 ++++++++++++++++-----
arch/arm/mm/mmu.c | 13 +++++-
arch/arm/mm/proc-v7.S | 1 +
13 files changed, 187 insertions(+), 35 deletions(-)
create mode 100644 arch/arm/include/asm/idmap.h
create mode 100644 arch/arm/lib/switch_stack.S
More information about the linux-arm-kernel
mailing list