|
@@ -562,7 +562,8 @@ static inline void local_r4k_flush_cache_page(void *args)
|
|
}
|
|
}
|
|
|
|
|
|
if (cpu_has_dc_aliases || (exec && !cpu_has_ic_fills_f_dc)) {
|
|
if (cpu_has_dc_aliases || (exec && !cpu_has_ic_fills_f_dc)) {
|
|
- r4k_blast_dcache_page(addr);
|
|
|
|
|
|
+ vaddr ? r4k_blast_dcache_page(addr) :
|
|
|
|
+ r4k_blast_dcache_user_page(addr);
|
|
if (exec && !cpu_icache_snoops_remote_store)
|
|
if (exec && !cpu_icache_snoops_remote_store)
|
|
r4k_blast_scache_page(addr);
|
|
r4k_blast_scache_page(addr);
|
|
}
|
|
}
|
|
@@ -573,7 +574,8 @@ static inline void local_r4k_flush_cache_page(void *args)
|
|
if (cpu_context(cpu, mm) != 0)
|
|
if (cpu_context(cpu, mm) != 0)
|
|
drop_mmu_context(mm, cpu);
|
|
drop_mmu_context(mm, cpu);
|
|
} else
|
|
} else
|
|
- r4k_blast_icache_page(addr);
|
|
|
|
|
|
+ vaddr ? r4k_blast_icache_page(addr) :
|
|
|
|
+ r4k_blast_icache_user_page(addr);
|
|
}
|
|
}
|
|
|
|
|
|
if (vaddr) {
|
|
if (vaddr) {
|