/arch/arm/include/asm/ |
D | page.h | 107 struct page; 111 void (*cpu_clear_user_highpage)(struct page *page, unsigned long vaddr); 112 void (*cpu_copy_user_highpage)(struct page *to, struct page *from, 116 void fa_copy_user_highpage(struct page *to, struct page *from, 118 void fa_clear_user_highpage(struct page *page, unsigned long vaddr); 119 void feroceon_copy_user_highpage(struct page *to, struct page *from, 121 void feroceon_clear_user_highpage(struct page *page, unsigned long vaddr); 122 void v4_mc_copy_user_highpage(struct page *to, struct page *from, 124 void v4_mc_clear_user_highpage(struct page *page, unsigned long vaddr); 125 void v4wb_copy_user_highpage(struct page *to, struct page *from, [all …]
|
/arch/openrisc/include/asm/ |
D | cacheflush.h | 24 extern void local_dcache_page_flush(struct page *page); 25 extern void local_icache_page_inv(struct page *page); 33 #define dcache_page_flush(page) local_dcache_page_flush(page) argument 34 #define icache_page_inv(page) local_icache_page_inv(page) argument 36 #define dcache_page_flush(page) local_dcache_page_flush(page) argument 37 #define icache_page_inv(page) smp_icache_page_inv(page) argument 38 extern void smp_icache_page_inv(struct page *page); 45 static inline void sync_icache_dcache(struct page *page) in sync_icache_dcache() argument 48 dcache_page_flush(page); in sync_icache_dcache() 49 icache_page_inv(page); in sync_icache_dcache() [all …]
|
/arch/s390/mm/ |
D | page-states.c | 61 static inline void set_page_unused(struct page *page, int order) in set_page_unused() argument 68 : "a" (page_to_phys(page + i)), in set_page_unused() 72 static inline void set_page_stable_dat(struct page *page, int order) in set_page_stable_dat() argument 79 : "a" (page_to_phys(page + i)), in set_page_stable_dat() 83 static inline void set_page_stable_nodat(struct page *page, int order) in set_page_stable_nodat() argument 90 : "a" (page_to_phys(page + i)), in set_page_stable_nodat() 97 struct page *page; in mark_kernel_pmd() local 105 page = phys_to_page(pmd_val(*pmd)); in mark_kernel_pmd() 106 set_bit(PG_arch_1, &page->flags); in mark_kernel_pmd() 113 struct page *page; in mark_kernel_pud() local [all …]
|
/arch/x86/include/asm/ |
D | set_memory.h | 57 int set_pages_array_uc(struct page **pages, int addrinarray); 58 int set_pages_array_wc(struct page **pages, int addrinarray); 59 int set_pages_array_wb(struct page **pages, int addrinarray); 81 int set_pages_uc(struct page *page, int numpages); 82 int set_pages_wb(struct page *page, int numpages); 83 int set_pages_ro(struct page *page, int numpages); 84 int set_pages_rw(struct page *page, int numpages); 86 int set_direct_map_invalid_noflush(struct page *page); 87 int set_direct_map_default_noflush(struct page *page); 88 bool kernel_page_present(struct page *page);
|
/arch/mips/include/asm/ |
D | cacheflush.h | 52 extern void (*flush_cache_page)(struct vm_area_struct *vma, unsigned long page, unsigned long pfn); 53 extern void __flush_dcache_pages(struct page *page, unsigned int nr); 59 __flush_dcache_pages(&folio->page, folio_nr_pages(folio)); in flush_dcache_folio() 65 static inline void flush_dcache_page(struct page *page) in flush_dcache_page() argument 68 __flush_dcache_pages(page, 1); in flush_dcache_page() 70 folio_set_dcache_dirty(page_folio(page)); in flush_dcache_page() 77 extern void __flush_anon_page(struct page *, unsigned long); 79 struct page *page, unsigned long vmaddr) in flush_anon_page() argument 81 if (cpu_has_dc_aliases && PageAnon(page)) in flush_anon_page() 82 __flush_anon_page(page, vmaddr); in flush_anon_page() [all …]
|
D | bcache.h | 20 void (*bc_wback_inv)(unsigned long page, unsigned long size); 21 void (*bc_inv)(unsigned long page, unsigned long size); 43 static inline void bc_wback_inv(unsigned long page, unsigned long size) in bc_wback_inv() argument 45 bcops->bc_wback_inv(page, size); in bc_wback_inv() 48 static inline void bc_inv(unsigned long page, unsigned long size) in bc_inv() argument 50 bcops->bc_inv(page, size); in bc_inv() 79 #define bc_wback_inv(page, size) do { } while (0) argument 80 #define bc_inv(page, size) do { } while (0) argument
|
/arch/arm64/include/asm/ |
D | mte.h | 26 int mte_save_tags(struct page *page); 28 void mte_restore_tags(swp_entry_t entry, struct page *page); 42 static inline void set_page_mte_tagged(struct page *page) in set_page_mte_tagged() argument 49 set_bit(PG_mte_tagged, &page->flags); in set_page_mte_tagged() 52 static inline bool page_mte_tagged(struct page *page) in page_mte_tagged() argument 54 bool ret = test_bit(PG_mte_tagged, &page->flags); in page_mte_tagged() 77 static inline bool try_page_mte_tagging(struct page *page) in try_page_mte_tagging() argument 79 if (!test_and_set_bit(PG_mte_lock, &page->flags)) in try_page_mte_tagging() 87 smp_cond_load_acquire(&page->flags, VAL & (1UL << PG_mte_tagged)); in try_page_mte_tagging() 111 static inline void set_page_mte_tagged(struct page *page) in set_page_mte_tagged() argument [all …]
|
D | page.h | 19 struct page; 25 void copy_user_highpage(struct page *to, struct page *from, 29 void copy_highpage(struct page *to, struct page *from); 36 void tag_clear_highpage(struct page *to); 39 #define clear_user_page(page, vaddr, pg) clear_page(page) argument 42 typedef struct page *pgtable_t;
|
/arch/sh/include/asm/ |
D | cacheflush.h | 47 static inline void flush_dcache_page(struct page *page) in flush_dcache_page() argument 49 flush_dcache_folio(page_folio(page)); in flush_dcache_page() 54 void flush_icache_pages(struct vm_area_struct *vma, struct page *page, 65 extern void __flush_anon_page(struct page *page, unsigned long); 68 struct page *page, unsigned long vmaddr) in flush_anon_page() argument 70 if (boot_cpu_data.dcache.n_aliases && PageAnon(page)) in flush_anon_page() 71 __flush_anon_page(page, vmaddr); in flush_anon_page() 85 struct page *page, unsigned long vaddr, void *dst, const void *src, 89 struct page *page, unsigned long vaddr, void *dst, const void *src, 100 void *kmap_coherent(struct page *page, unsigned long addr);
|
/arch/arm/mm/ |
D | dma-mapping.c | 55 struct page *page; member 64 struct page **ret_page); 107 static void __dma_clear_buffer(struct page *page, size_t size, int coherent_flag) in __dma_clear_buffer() argument 113 if (PageHighMem(page)) { in __dma_clear_buffer() 114 phys_addr_t base = __pfn_to_phys(page_to_pfn(page)); in __dma_clear_buffer() 117 void *ptr = kmap_atomic(page); in __dma_clear_buffer() 122 page++; in __dma_clear_buffer() 128 void *ptr = page_address(page); in __dma_clear_buffer() 141 static struct page *__dma_alloc_buffer(struct device *dev, size_t size, in __dma_alloc_buffer() 145 struct page *page, *p, *e; in __dma_alloc_buffer() local [all …]
|
D | copypage-v6.c | 30 static void v6_copy_user_highpage_nonaliasing(struct page *to, in v6_copy_user_highpage_nonaliasing() 31 struct page *from, unsigned long vaddr, struct vm_area_struct *vma) in v6_copy_user_highpage_nonaliasing() 46 static void v6_clear_user_highpage_nonaliasing(struct page *page, unsigned long vaddr) in v6_clear_user_highpage_nonaliasing() argument 48 void *kaddr = kmap_atomic(page); in v6_clear_user_highpage_nonaliasing() 69 static void v6_copy_user_highpage_aliasing(struct page *to, in v6_copy_user_highpage_aliasing() 70 struct page *from, unsigned long vaddr, struct vm_area_struct *vma) in v6_copy_user_highpage_aliasing() 104 static void v6_clear_user_highpage_aliasing(struct page *page, unsigned long vaddr) in v6_clear_user_highpage_aliasing() argument 109 discard_old_kernel_data(page_address(page)); in v6_clear_user_highpage_aliasing() 117 set_top_pte(to, mk_pte(page, PAGE_KERNEL)); in v6_clear_user_highpage_aliasing()
|
/arch/x86/kernel/cpu/sgx/ |
D | main.c | 59 struct sgx_epc_page *page; in __sgx_sanitize_pages() local 68 page = list_first_entry(dirty_page_list, struct sgx_epc_page, list); in __sgx_sanitize_pages() 77 if (page->poison) { in __sgx_sanitize_pages() 78 struct sgx_epc_section *section = &sgx_epc_sections[page->section]; in __sgx_sanitize_pages() 82 list_move(&page->list, &node->sgx_poison_page_list); in __sgx_sanitize_pages() 88 ret = __eremove(sgx_get_epc_virt_addr(page)); in __sgx_sanitize_pages() 94 list_del(&page->list); in __sgx_sanitize_pages() 95 sgx_free_epc_page(page); in __sgx_sanitize_pages() 98 list_move_tail(&page->list, &dirty); in __sgx_sanitize_pages() 111 struct sgx_encl_page *page = epc_page->owner; in sgx_reclaimer_age() local [all …]
|
D | sgx.h | 66 static inline unsigned long sgx_get_epc_phys_addr(struct sgx_epc_page *page) in sgx_get_epc_phys_addr() argument 68 struct sgx_epc_section *section = &sgx_epc_sections[page->section]; in sgx_get_epc_phys_addr() 71 index = ((unsigned long)page - (unsigned long)section->pages) / sizeof(*page); in sgx_get_epc_phys_addr() 76 static inline void *sgx_get_epc_virt_addr(struct sgx_epc_page *page) in sgx_get_epc_virt_addr() argument 78 struct sgx_epc_section *section = &sgx_epc_sections[page->section]; in sgx_get_epc_virt_addr() 81 index = ((unsigned long)page - (unsigned long)section->pages) / sizeof(*page); in sgx_get_epc_virt_addr() 87 void sgx_free_epc_page(struct sgx_epc_page *page); 90 void sgx_mark_page_reclaimable(struct sgx_epc_page *page); 91 int sgx_unmark_page_reclaimable(struct sgx_epc_page *page);
|
/arch/csky/abiv1/inc/abi/ |
D | page.h | 5 extern void flush_dcache_page(struct page *page); 14 struct page *page) in clear_user_page() argument 18 flush_dcache_page(page); in clear_user_page() 22 struct page *page) in copy_user_page() argument 26 flush_dcache_page(page); in copy_user_page()
|
/arch/xtensa/mm/ |
D | cache.c | 59 static inline void kmap_invalidate_coherent(struct page *page, in kmap_invalidate_coherent() argument 62 if (!DCACHE_ALIAS_EQ(page_to_phys(page), vaddr)) { in kmap_invalidate_coherent() 65 if (!PageHighMem(page)) { in kmap_invalidate_coherent() 66 kvaddr = (unsigned long)page_to_virt(page); in kmap_invalidate_coherent() 71 (page_to_phys(page) & DCACHE_ALIAS_MASK); in kmap_invalidate_coherent() 75 page_to_phys(page)); in kmap_invalidate_coherent() 81 static inline void *coherent_kvaddr(struct page *page, unsigned long base, in coherent_kvaddr() argument 84 *paddr = page_to_phys(page); in coherent_kvaddr() 88 void clear_user_highpage(struct page *page, unsigned long vaddr) in clear_user_highpage() argument 91 void *kvaddr = coherent_kvaddr(page, TLBTEMP_BASE_1, vaddr, &paddr); in clear_user_highpage() [all …]
|
/arch/openrisc/mm/ |
D | cache.c | 19 static __always_inline void cache_loop(struct page *page, const unsigned int reg) in cache_loop() argument 21 unsigned long paddr = page_to_pfn(page) << PAGE_SHIFT; in cache_loop() 30 void local_dcache_page_flush(struct page *page) in local_dcache_page_flush() argument 32 cache_loop(page, SPR_DCBFR); in local_dcache_page_flush() 36 void local_icache_page_inv(struct page *page) in local_icache_page_inv() argument 38 cache_loop(page, SPR_ICBIR); in local_icache_page_inv()
|
/arch/arm64/mm/ |
D | mteswap.c | 23 int mte_save_tags(struct page *page) in mte_save_tags() argument 27 if (!page_mte_tagged(page)) in mte_save_tags() 34 mte_save_page_tags(page_address(page), tag_storage); in mte_save_tags() 37 ret = xa_store(&mte_pages, page_swap_entry(page).val, tag_storage, in mte_save_tags() 50 void mte_restore_tags(swp_entry_t entry, struct page *page) in mte_restore_tags() argument 57 if (try_page_mte_tagging(page)) { in mte_restore_tags() 58 mte_restore_page_tags(page_address(page), tags); in mte_restore_tags() 59 set_page_mte_tagged(page); in mte_restore_tags() 71 static inline void __mte_invalidate_tags(struct page *page) in __mte_invalidate_tags() argument 73 swp_entry_t entry = page_swap_entry(page); in __mte_invalidate_tags()
|
/arch/s390/include/asm/ |
D | page.h | 51 #define clear_page(page) memset((page), 0, PAGE_SIZE) argument 73 #define clear_user_page(page, vaddr, pg) clear_page(page) argument 164 struct page; 165 void arch_free_page(struct page *page, int order); 166 void arch_alloc_page(struct page *page, int order); 167 void arch_set_page_dat(struct page *page, int order); 178 int arch_make_page_accessible(struct page *page); 192 #define page_to_phys(page) pfn_to_phys(page_to_pfn(page)) argument 207 #define page_to_virt(page) pfn_to_virt(page_to_pfn(page)) argument
|
D | tlb.h | 28 struct page *page, bool delay_rmap, int page_size); 30 struct page *page, unsigned int nr_pages, bool delay_rmap); 49 struct page *page, bool delay_rmap, int page_size) in __tlb_remove_page_size() argument 53 free_page_and_swap_cache(page); in __tlb_remove_page_size() 58 struct page *page, unsigned int nr_pages, bool delay_rmap) in __tlb_remove_folio_pages() argument 61 encode_page(page, ENCODED_PAGE_BIT_NR_PAGES_NEXT), in __tlb_remove_folio_pages() 66 VM_WARN_ON_ONCE(page_folio(page) != page_folio(page + nr_pages - 1)); in __tlb_remove_folio_pages()
|
/arch/parisc/include/asm/ |
D | cacheflush.h | 49 static inline void flush_dcache_page(struct page *page) in flush_dcache_page() argument 51 flush_dcache_folio(page_folio(page)); in flush_dcache_page() 61 void flush_icache_pages(struct vm_area_struct *vma, struct page *page, 70 void copy_to_user_page(struct vm_area_struct *vma, struct page *page, 72 void copy_from_user_page(struct vm_area_struct *vma, struct page *page, 80 void flush_anon_page(struct vm_area_struct *vma, struct page *page, unsigned long vmaddr);
|
/arch/nios2/include/asm/ |
D | page.h | 48 #define clear_page(page) memset((page), 0, PAGE_SIZE) argument 51 struct page; 53 extern void clear_user_page(void *addr, unsigned long vaddr, struct page *page); 55 struct page *to); 60 typedef struct page *pgtable_t; 77 extern struct page *mem_map; 84 #define page_to_virt(page) \ argument 85 ((void *)(((page) - mem_map) << PAGE_SHIFT) + PAGE_OFFSET)
|
/arch/mips/mm/ |
D | init.c | 63 struct page *page; in setup_zero_pages() local 74 page = virt_to_page((void *)empty_zero_page); in setup_zero_pages() 75 split_page(page, order); in setup_zero_pages() 76 for (i = 0; i < (1 << order); i++, page++) in setup_zero_pages() 77 mark_page_reserved(page); in setup_zero_pages() 82 static void *__kmap_pgprot(struct page *page, unsigned long addr, pgprot_t prot) in __kmap_pgprot() argument 91 BUG_ON(folio_test_dcache_dirty(page_folio(page))); in __kmap_pgprot() 98 pte = mk_pte(page, prot); in __kmap_pgprot() 137 void *kmap_coherent(struct page *page, unsigned long addr) in kmap_coherent() argument 139 return __kmap_pgprot(page, addr, PAGE_KERNEL); in kmap_coherent() [all …]
|
/arch/sparc/include/asm/ |
D | cacheflush_64.h | 26 #define flush_cache_page(vma, page, pfn) \ argument 51 static inline void flush_dcache_page(struct page *page) in flush_dcache_page() argument 53 flush_dcache_folio(page_folio(page)); in flush_dcache_page() 56 void flush_ptrace_access(struct vm_area_struct *, struct page *, 60 #define copy_to_user_page(vma, page, vaddr, dst, src, len) \ argument 62 flush_cache_page(vma, vaddr, page_to_pfn(page)); \ 64 flush_ptrace_access(vma, page, vaddr, src, len, 0); \ 67 #define copy_from_user_page(vma, page, vaddr, dst, src, len) \ argument 69 flush_cache_page(vma, vaddr, page_to_pfn(page)); \ 71 flush_ptrace_access(vma, page, vaddr, dst, len, 1); \
|
/arch/m68k/include/asm/ |
D | page_mm.h | 29 static inline void clear_page(void *page) in clear_page() argument 32 unsigned long *sp = page; in clear_page() 47 : "a" (page), "0" (sp), in clear_page() 52 #define clear_page(page) memset((page), 0, PAGE_SIZE) argument 56 #define clear_user_page(addr, vaddr, page) \ argument 58 flush_dcache_page(page); \ 60 #define copy_user_page(to, from, vaddr, page) \ argument 62 flush_dcache_page(page); \ 139 #define page_to_virt(page) ({ \ argument 140 pfn_to_virt(page_to_pfn(page)); \
|
/arch/xtensa/include/asm/ |
D | pgalloc.h | 26 #define pmd_populate(mm, pmdp, page) \ argument 27 (pmd_val(*(pmdp)) = ((unsigned long)page_to_virt(page))) 56 struct page *page; in pte_alloc_one() local 58 page = __pte_alloc_one(mm, GFP_PGTABLE_USER); in pte_alloc_one() 59 if (!page) in pte_alloc_one() 61 ptes_clear(page_address(page)); in pte_alloc_one() 62 return page; in pte_alloc_one()
|