aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/nds32/mm/cacheflush.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/arch/nds32/mm/cacheflush.c b/arch/nds32/mm/cacheflush.c
index ae31cd2c21be..ce8fd34497bf 100644
--- a/arch/nds32/mm/cacheflush.c
+++ b/arch/nds32/mm/cacheflush.c
@@ -175,11 +175,9 @@ void copy_user_highpage(struct page *to, struct page *from,
175 pto = page_to_phys(to); 175 pto = page_to_phys(to);
176 pfrom = page_to_phys(from); 176 pfrom = page_to_phys(from);
177 177
178 local_irq_save(flags);
178 if (aliasing(vaddr, (unsigned long)kfrom)) 179 if (aliasing(vaddr, (unsigned long)kfrom))
179 cpu_dcache_wb_page((unsigned long)kfrom); 180 cpu_dcache_wb_page((unsigned long)kfrom);
180 if (aliasing(vaddr, (unsigned long)kto))
181 cpu_dcache_inval_page((unsigned long)kto);
182 local_irq_save(flags);
183 vto = kremap0(vaddr, pto); 181 vto = kremap0(vaddr, pto);
184 vfrom = kremap1(vaddr, pfrom); 182 vfrom = kremap1(vaddr, pfrom);
185 copy_page((void *)vto, (void *)vfrom); 183 copy_page((void *)vto, (void *)vfrom);