[PATCH v3 0/9] MMU disabling code and kexec fixes
Will Deacon
will.deacon at arm.com
Wed Jun 15 13:23:11 EDT 2011
Hello,
This is version 3 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
Changes from v2 include:
* No longer remove locking from the L2 invalidation function. I had
previously misdiagnosed the problem here, so it's now fixed
correctly in the disabling code.
* The reserve stack is now aligned to PMD_SIZE instead of SZ_1M so
that it doesn't get clobbered by the identity mapping.
I've tested these patches with kexec on Versatile Express and
Realview-PBX without any problems. It would be nice to get any feedback
on how this can also be used by the hibernation code from Frank and
whether or not any changes are required.
Cheers,
Will
Will Deacon (9):
ARM: l2x0: fix disabling function to avoid deadlock
ARM: proc: add definition of cpu_reset for ARMv6 and ARMv7 cores
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: multi-cpu: remove arguments from CPU proc macros
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 | 23 +++++++++++++
arch/arm/include/asm/pgtable.h | 3 --
arch/arm/include/asm/proc-fns.h | 14 ++++----
arch/arm/include/asm/system.h | 1 +
arch/arm/kernel/machine_kexec.c | 14 +-------
arch/arm/kernel/process.c | 67 +++++++++++++++++++++++++++++++++------
arch/arm/kernel/smp.c | 5 +++
arch/arm/lib/Makefile | 3 +-
arch/arm/lib/switch_stack.S | 44 +++++++++++++++++++++++++
arch/arm/mm/cache-l2x0.c | 19 +++++++---
arch/arm/mm/idmap.c | 31 +++++++++++++-----
arch/arm/mm/proc-v6.S | 5 +++
arch/arm/mm/proc-v7.S | 7 ++++
14 files changed, 189 insertions(+), 49 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