Lines Matching refs:page

131 void __flush_ptrace_access(struct page *page, unsigned long uaddr, void *kaddr,  in __flush_ptrace_access()  argument
143 flush_pfn_alias(page_to_pfn(page), uaddr); in __flush_ptrace_access()
152 flush_icache_alias(page_to_pfn(page), uaddr, len); in __flush_ptrace_access()
162 void flush_ptrace_access(struct vm_area_struct *vma, struct page *page, in flush_ptrace_access() argument
170 __flush_ptrace_access(page, uaddr, kaddr, len, flags); in flush_ptrace_access()
173 void flush_uprobe_xol_access(struct page *page, unsigned long uaddr, in flush_uprobe_xol_access() argument
178 __flush_ptrace_access(page, uaddr, kaddr, len, flags); in flush_uprobe_xol_access()
188 void copy_to_user_page(struct vm_area_struct *vma, struct page *page, in copy_to_user_page() argument
196 flush_ptrace_access(vma, page, uaddr, dst, len); in copy_to_user_page()
202 void __flush_dcache_page(struct address_space *mapping, struct page *page) in __flush_dcache_page() argument
209 if (!PageHighMem(page)) { in __flush_dcache_page()
210 size_t page_size = PAGE_SIZE << compound_order(page); in __flush_dcache_page()
211 __cpuc_flush_dcache_area(page_address(page), page_size); in __flush_dcache_page()
215 for (i = 0; i < (1 << compound_order(page)); i++) { in __flush_dcache_page()
216 void *addr = kmap_atomic(page + i); in __flush_dcache_page()
221 for (i = 0; i < (1 << compound_order(page)); i++) { in __flush_dcache_page()
222 void *addr = kmap_high_get(page + i); in __flush_dcache_page()
225 kunmap_high(page + i); in __flush_dcache_page()
237 flush_pfn_alias(page_to_pfn(page), in __flush_dcache_page()
238 page->index << PAGE_CACHE_SHIFT); in __flush_dcache_page()
241 static void __flush_dcache_aliases(struct address_space *mapping, struct page *page) in __flush_dcache_aliases() argument
253 pgoff = page->index << (PAGE_CACHE_SHIFT - PAGE_SHIFT); in __flush_dcache_aliases()
267 flush_cache_page(mpnt, mpnt->vm_start + offset, page_to_pfn(page)); in __flush_dcache_aliases()
276 struct page *page; in __sync_icache_dcache() local
286 page = pfn_to_page(pfn); in __sync_icache_dcache()
288 mapping = page_mapping(page); in __sync_icache_dcache()
292 if (!test_and_set_bit(PG_dcache_clean, &page->flags)) in __sync_icache_dcache()
293 __flush_dcache_page(mapping, page); in __sync_icache_dcache()
319 void flush_dcache_page(struct page *page) in flush_dcache_page() argument
327 if (page == ZERO_PAGE(0)) in flush_dcache_page()
330 mapping = page_mapping(page); in flush_dcache_page()
333 mapping && !page_mapped(page)) in flush_dcache_page()
334 clear_bit(PG_dcache_clean, &page->flags); in flush_dcache_page()
336 __flush_dcache_page(mapping, page); in flush_dcache_page()
338 __flush_dcache_aliases(mapping, page); in flush_dcache_page()
341 set_bit(PG_dcache_clean, &page->flags); in flush_dcache_page()
355 void flush_kernel_dcache_page(struct page *page) in flush_kernel_dcache_page() argument
360 mapping = page_mapping(page); in flush_kernel_dcache_page()
365 addr = page_address(page); in flush_kernel_dcache_page()
388 void __flush_anon_page(struct vm_area_struct *vma, struct page *page, unsigned long vmaddr) in __flush_anon_page() argument
399 pfn = page_to_pfn(page); in __flush_anon_page()
416 __cpuc_flush_dcache_area(page_address(page), PAGE_SIZE); in __flush_anon_page()