[AVR32] Don't use kmap() in flush_icache_page()
flush_icache_page() can be called from atomic context, so we can't use kmap(). Use page_address() instead. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
This commit is contained in:
@@ -121,9 +121,8 @@ void flush_icache_range(unsigned long start, unsigned long end)
|
|||||||
void flush_icache_page(struct vm_area_struct *vma, struct page *page)
|
void flush_icache_page(struct vm_area_struct *vma, struct page *page)
|
||||||
{
|
{
|
||||||
if (vma->vm_flags & VM_EXEC) {
|
if (vma->vm_flags & VM_EXEC) {
|
||||||
void *v = kmap(page);
|
void *v = page_address(page);
|
||||||
__flush_icache_range((unsigned long)v, (unsigned long)v + PAGE_SIZE);
|
__flush_icache_range((unsigned long)v, (unsigned long)v + PAGE_SIZE);
|
||||||
kunmap(v);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user