@@ -117,14 +117,14 @@ static void sh4_flush_dcache_page(void *arg)
else
#endif
{
- unsigned long phys = page_to_phys(page);
+ unsigned long virt = (unsigned long)page_address(page);
unsigned long addr = CACHE_OC_ADDRESS_ARRAY;
int i, n;
/* Loop all the D-cache */
n = boot_cpu_data.dcache.n_aliases;
for (i = 0; i <= n; i++, addr += PAGE_SIZE)
- flush_cache_one(addr, phys);
+ flush_cache_one(addr, virt);
}
wmb();
@@ -258,7 +258,7 @@ static void sh4_flush_cache_page(void *args)
if (pages_do_alias(address, phys))
flush_cache_one(CACHE_OC_ADDRESS_ARRAY |
- (address & shm_align_mask), phys);
+ (address & shm_align_mask), address);
if (vma->vm_flags & VM_EXEC)
flush_icache_all();