diff options
author | Paul Mundt <lethal@linux-sh.org> | 2009-06-19 02:37:11 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-06-23 04:30:17 -0400 |
commit | 997d0030934f7722d81e5b1cdd7af85ac7ed960b (patch) | |
tree | 29ea0485adca5fafd0e89367457205f9b384fb96 /arch | |
parent | 2e046b9487dcc60707cac77fb8f744ec830209cd (diff) |
sh: Use local TLB flush in set_pte_phys().
set_pte_phys() presently uses the global flush_tlb_one(), which locks on
SMP trying to do the IPI. As we have not even initialized the other CPUs
at this point, switch to the local_ variant so the flush happens on the
boot CPU.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sh/mm/init.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sh/mm/init.c b/arch/sh/mm/init.c index ee8e6bbe882c..d1be04204219 100644 --- a/arch/sh/mm/init.c +++ b/arch/sh/mm/init.c | |||
@@ -70,7 +70,7 @@ static void set_pte_phys(unsigned long addr, unsigned long phys, pgprot_t prot) | |||
70 | } | 70 | } |
71 | 71 | ||
72 | set_pte(pte, pfn_pte(phys >> PAGE_SHIFT, prot)); | 72 | set_pte(pte, pfn_pte(phys >> PAGE_SHIFT, prot)); |
73 | flush_tlb_one(get_asid(), addr); | 73 | local_flush_tlb_one(get_asid(), addr); |
74 | } | 74 | } |
75 | 75 | ||
76 | /* | 76 | /* |