Commit 83b97532 authored by Paul Mackerras's avatar Paul Mackerras

PPC32: Add struct page * argument to copy/clear_user_page.

parent bd028ecb
......@@ -559,18 +559,19 @@ void flush_icache_page(struct vm_area_struct *vma, struct page *page)
if (page->mapping && !PageReserved(page)
&& !test_bit(PG_arch_1, &page->flags)) {
phys = ((page - mem_map) << PAGE_SHIFT) + PPC_MEMSTART;
phys = page_to_pfn(page) << PAGE_SHIFT;
__flush_dcache_icache_phys(phys);
set_bit(PG_arch_1, &page->flags);
}
}
void clear_user_page(void *page, unsigned long vaddr)
void clear_user_page(void *page, unsigned long vaddr, struct page *pg)
{
clear_page(page);
}
void copy_user_page(void *vto, void *vfrom, unsigned long vaddr)
void copy_user_page(void *vto, void *vfrom, unsigned long vaddr,
struct page *pg)
{
copy_page(vto, vfrom);
__flush_dcache_icache(vto);
......
......@@ -85,10 +85,12 @@ typedef unsigned long pgprot_t;
/* to align the pointer to the (next) page boundary */
#define PAGE_ALIGN(addr) (((addr)+PAGE_SIZE-1)&PAGE_MASK)
struct page;
extern void clear_page(void *page);
extern void copy_page(void *to, void *from);
extern void clear_user_page(void *page, unsigned long vaddr);
extern void copy_user_page(void *to, void *from, unsigned long vaddr);
extern void clear_user_page(void *page, unsigned long vaddr, struct page *pg);
extern void copy_user_page(void *to, void *from, unsigned long vaddr,
struct page *pg);
#ifndef CONFIG_APUS
#define PPC_MEMSTART 0
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment