linux/arch
Will Deacon 2d81f1fe81 ARM: lib: add call_with_stack function for safely changing stack
When disabling the MMU, it is necessary to take out a 1:1 identity map
of the reset code so that it can safely be executed with and without
the MMU active. To avoid the situation where the physical address of the
reset code aliases with the virtual address of the active stack (which
cannot be included in the 1:1 mapping), it is desirable to change to a
new stack at a location which is less likely to alias.

This code adds a new lib function, call_with_stack:

	void call_with_stack(void (*fn)(void *), void *arg, void *sp);

which changes the stack to point at the sp parameter, before invoking
fn(arg) with the new stack selected.

Reviewed-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Dave Martin <dave.martin@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2011-12-12 16:07:35 +00:00
..
alpha
arm ARM: lib: add call_with_stack function for safely changing stack 2011-12-12 16:07:35 +00:00
avr32
blackfin blackfin: Fixup export.h includes 2011-11-14 17:15:23 +08:00
cris
frv
h8300
hexagon
ia64
m32r
m68k
microblaze microblaze: bury asm/namei.h 2011-11-21 16:48:28 -05:00
mips Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2011-11-15 22:44:45 -02:00
mn10300
openrisc
parisc
powerpc powerpc/44x: Add mtd ndfc to the ppx44x defconfig 2011-11-25 10:06:00 +11:00
s390 Merge branch 'kvm-updates/3.2' of git://git.kernel.org/pub/scm/virt/kvm/kvm 2011-11-20 14:57:43 -08:00
score
sh
sparc sparc64: Patch sun4v code sequences properly on module load. 2011-11-17 22:44:58 -08:00
tile
um
unicore32 unicore32, exec: remove redundant set_fs(USER_DS) 2011-11-16 10:50:09 +08:00
x86 fix braino in um patchset (mea culpa) 2011-11-21 12:10:21 -08:00
xtensa
.gitignore
Kconfig