diff options
author | Russell King <rmk+kernel@arm.linux.org.uk> | 2014-04-13 19:43:26 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2014-06-02 09:20:18 +0100 |
commit | 0aeb3408ca9773283b0ae63771c4b17f39e204df (patch) | |
tree | cfd151a26e9c3b2a4859f983f2db8a345630e269 /arch/arm/mm | |
parent | 3cb099f0894c06359dd6495dec81359591d06207 (diff) | |
download | op-kernel-dev-0aeb3408ca9773283b0ae63771c4b17f39e204df.zip op-kernel-dev-0aeb3408ca9773283b0ae63771c4b17f39e204df.tar.gz |
ARM: remove global cr_no_alignment
cr_no_alignment is really only used by the alignment code. Since we no
longer change the setting of cr_alignment after boot, we can localise
this to alignment.c
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mm')
-rw-r--r-- | arch/arm/mm/alignment.c | 3 | ||||
-rw-r--r-- | arch/arm/mm/init.c | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/mm/alignment.c b/arch/arm/mm/alignment.c index 054e995..b8cb1a2 100644 --- a/arch/arm/mm/alignment.c +++ b/arch/arm/mm/alignment.c @@ -82,6 +82,7 @@ static unsigned long ai_word; static unsigned long ai_dword; static unsigned long ai_multi; static int ai_usermode; +static unsigned long cr_no_alignment; core_param(alignment, ai_usermode, int, 0600); @@ -979,6 +980,8 @@ static int __init alignment_init(void) ai_usermode = safe_usermode(ai_usermode, false); } + cr_no_alignment = get_cr() & ~CR_A; + hook_fault_code(FAULT_CODE_ALIGNMENT, do_alignment, SIGBUS, BUS_ADRALN, "alignment exception"); diff --git a/arch/arm/mm/init.c b/arch/arm/mm/init.c index 94332b1..13ce33e 100644 --- a/arch/arm/mm/init.c +++ b/arch/arm/mm/init.c @@ -40,7 +40,6 @@ #ifdef CONFIG_CPU_CP15_MMU unsigned long __init __clear_cr(unsigned long mask) { - cr_no_alignment = cr_no_alignment & ~mask; cr_alignment = cr_alignment & ~mask; return cr_alignment; } |