/linux/include/linux/ |
H A D | page_ref.h | 29 extern void __page_ref_set(struct page *page, int v); 30 extern void __page_ref_mod(struct page *page, int v); 31 extern void __page_ref_mod_and_test(struct page *page, int v, int ret); 32 extern void __page_ref_mod_and_return(struct page *page, int v, int ret); 33 extern void __page_ref_mod_unless(struct page *page, int v, int u); 34 extern void __page_ref_freeze(struct page *page, int v, int ret); 35 extern void __page_ref_unfreeze(struct page *page, int v); 41 static inline void __page_ref_set(struct page *page, int v) in __page_ref_set() argument 44 static inline void __page_ref_mod(struct page *page, int v) in __page_ref_mod() argument 47 static inline void __page_ref_mod_and_test(struct page *page, int v, int ret) in __page_ref_mod_and_test() argument [all …]
|
H A D | page-flags.h | 204 static __always_inline const struct page *page_fixed_fake_head(const struct page *page) in page_fixed_fake_head() argument 207 return page; in page_fixed_fake_head() 215 if (IS_ALIGNED((unsigned long)page, PAGE_SIZE) && in page_fixed_fake_head() 216 test_bit(PG_head, &page->flags)) { in page_fixed_fake_head() 222 unsigned long head = READ_ONCE(page[1].compound_head); in page_fixed_fake_head() 225 return (const struct page *)(head - 1); in page_fixed_fake_head() 227 return page; in page_fixed_fake_head() 230 static inline const struct page *page_fixed_fake_head(const struct page *page) in page_fixed_fake_head() argument 232 return page; in page_fixed_fake_head() 236 static __always_inline int page_is_fake_head(const struct page *page) in page_is_fake_head() argument [all …]
|
H A D | highmem-internal.h | 10 void *__kmap_local_page_prot(struct page *page, pgprot_t prot); 35 void *kmap_high(struct page *page); 36 void kunmap_high(struct page *page); 38 struct page *__kmap_to_page(void *addr); 40 static inline void *kmap(struct page *page) in kmap() argument 45 if (!PageHighMem(page)) in kmap() 46 addr = page_address(page); in kmap() 48 addr = kmap_high(page); in kmap() 53 static inline void kunmap(struct page *page) in kunmap() argument 56 if (!PageHighMem(page)) in kunmap() [all …]
|
H A D | balloon_compaction.h | 58 int (*migratepage)(struct balloon_dev_info *, struct page *newpage, 59 struct page *page, enum migrate_mode mode); 62 extern struct page *balloon_page_alloc(void); 64 struct page *page); 65 extern struct page *balloon_page_dequeue(struct balloon_dev_info *b_dev_info); 92 struct page *page) in balloon_page_insert() argument 94 __SetPageOffline(page); in balloon_page_insert() 95 __SetPageMovable(page, &balloon_mops); in balloon_page_insert() 96 set_page_private(page, (unsigned long)balloon); in balloon_page_insert() 97 list_add(&page->lru, &balloon->pages); in balloon_page_insert() [all …]
|
H A D | page_owner.h | 11 extern void __reset_page_owner(struct page *page, unsigned short order); 12 extern void __set_page_owner(struct page *page, 14 extern void __split_page_owner(struct page *page, int old_order, 17 extern void __set_page_owner_migrate_reason(struct page *page, int reason); 18 extern void __dump_page_owner(const struct page *page); 22 static inline void reset_page_owner(struct page *page, unsigned short order) in reset_page_owner() argument 25 __reset_page_owner(page, order); in reset_page_owner() 28 static inline void set_page_owner(struct page *page, in set_page_owner() argument 32 __set_page_owner(page, order, gfp_mask); in set_page_owner() 35 static inline void split_page_owner(struct page *page, int old_order, in split_page_owner() argument [all …]
|
H A D | highmem.h | 37 static inline void *kmap(struct page *page); 46 static inline void kunmap(struct page *page); 54 static inline struct page *kmap_to_page(void *addr); 96 static inline void *kmap_local_page(struct page *page); 179 static inline void *kmap_atomic(struct page *page); 186 static inline void flush_anon_page(struct vm_area_struct *vma, struct page *page, unsigned long vma… in flush_anon_page() argument 202 static inline void clear_user_highpage(struct page *page, unsigned long vaddr) in clear_user_highpage() argument 204 void *addr = kmap_local_page(page); in clear_user_highpage() 205 clear_user_page(addr, vaddr, page); in clear_user_highpage() 231 clear_user_highpage(&folio->page, vaddr); in vma_alloc_zeroed_movable_folio() [all …]
|
H A D | mm.h | 149 static inline void __mm_zero_struct_page(struct page *page) in __mm_zero_struct_page() argument 151 unsigned long *_pp = (void *)page; in __mm_zero_struct_page() 154 BUILD_BUG_ON(sizeof(struct page) & 7); in __mm_zero_struct_page() 155 BUILD_BUG_ON(sizeof(struct page) < 56); in __mm_zero_struct_page() 156 BUILD_BUG_ON(sizeof(struct page) > 96); in __mm_zero_struct_page() 158 switch (sizeof(struct page)) { in __mm_zero_struct_page() 185 #define mm_zero_struct_page(pp) ((void)memset((pp), 0, sizeof(struct page))) 224 #define nth_page(page,n) pfn_to_page(page_to_pfn((page)) + (n)) argument 227 #define nth_page(page,n) ((page) + (n)) argument 228 #define folio_page_idx(folio, p) ((p) - &(folio)->page) [all …]
|
H A D | pgalloc_tag.h | 25 struct page *page; /* reference in page flags */ member 101 static inline bool get_page_tag_ref(struct page *page, union codetag_ref *ref, in get_page_tag_ref() argument 104 if (!page) in get_page_tag_ref() 110 idx = (page->flags >> alloc_tag_ref_offs) & alloc_tag_ref_mask; in get_page_tag_ref() 112 handle->page = page; in get_page_tag_ref() 117 page_ext = page_ext_get(page); in get_page_tag_ref() 141 struct page *page = handle.page; in update_page_tag_ref() local 146 if (WARN_ON(!page || !ref)) in update_page_tag_ref() 152 old_flags = READ_ONCE(page->flags); in update_page_tag_ref() 156 } while (unlikely(!try_cmpxchg(&page->flags, &old_flags, flags))); in update_page_tag_ref() [all …]
|
H A D | pageblock-flags.h | 66 struct page; 68 unsigned long get_pfnblock_flags_mask(const struct page *page, 72 void set_pfnblock_flags_mask(struct page *page, 79 #define get_pageblock_skip(page) \ argument 80 get_pfnblock_flags_mask(page, page_to_pfn(page), \ 82 #define clear_pageblock_skip(page) \ argument 83 set_pfnblock_flags_mask(page, 0, page_to_pfn(page), \ 85 #define set_pageblock_skip(page) \ argument 86 set_pfnblock_flags_mask(page, (1 << PB_migrate_skip), \ 87 page_to_pfn(page), \ [all …]
|
/linux/mm/ |
H A D | page_isolation.c | 33 static struct page *has_unmovable_pages(unsigned long start_pfn, unsigned long end_pfn, in has_unmovable_pages() 36 struct page *page = pfn_to_page(start_pfn); in has_unmovable_pages() local 37 struct zone *zone = page_zone(page); in has_unmovable_pages() 43 if (is_migrate_cma_page(page)) { in has_unmovable_pages() 52 return page; in has_unmovable_pages() 56 page = pfn_to_page(pfn); in has_unmovable_pages() 64 if (PageReserved(page)) in has_unmovable_pages() 65 return page; in has_unmovable_pages() 81 if (PageHuge(page) || PageTransCompound(page)) { in has_unmovable_pages() 82 struct folio *folio = page_folio(page); in has_unmovable_pages() [all …]
|
H A D | page_alloc.c | 214 static void __free_pages_ok(struct page *page, unsigned int order, 288 static bool page_contains_unaccepted(struct page *page, unsigned int order); 290 static bool __free_unaccepted(struct page *page); 331 static inline unsigned long *get_pageblock_bitmap(const struct page *page, in get_pageblock_bitmap() argument 337 return page_zone(page)->pageblock_flags; in get_pageblock_bitmap() 341 static inline int pfn_to_bitidx(const struct page *page, unsigned long pfn) in pfn_to_bitidx() argument 346 pfn = pfn - pageblock_start_pfn(page_zone(page)->zone_start_pfn); in pfn_to_bitidx() 359 unsigned long get_pfnblock_flags_mask(const struct page *page, in get_pfnblock_flags_mask() argument 366 bitmap = get_pageblock_bitmap(page, pfn); in get_pfnblock_flags_mask() 367 bitidx = pfn_to_bitidx(page, pfn); in get_pfnblock_flags_mask() [all …]
|
H A D | balloon_compaction.c | 15 struct page *page) in balloon_page_enqueue_one() argument 23 BUG_ON(!trylock_page(page)); in balloon_page_enqueue_one() 24 balloon_page_insert(b_dev_info, page); in balloon_page_enqueue_one() 25 unlock_page(page); in balloon_page_enqueue_one() 43 struct page *page, *tmp; in balloon_page_list_enqueue() local 48 list_for_each_entry_safe(page, tmp, pages, lru) { in balloon_page_list_enqueue() 49 list_del(&page->lru); in balloon_page_list_enqueue() 50 balloon_page_enqueue_one(b_dev_info, page); in balloon_page_list_enqueue() 79 struct page *page, *tmp; in balloon_page_list_dequeue() local 84 list_for_each_entry_safe(page, tmp, &b_dev_info->pages, lru) { in balloon_page_list_dequeue() [all …]
|
H A D | debug_page_ref.c | 8 void __page_ref_set(struct page *page, int v) in __page_ref_set() argument 10 trace_page_ref_set(page, v); in __page_ref_set() 15 void __page_ref_mod(struct page *page, int v) in __page_ref_mod() argument 17 trace_page_ref_mod(page, v); in __page_ref_mod() 22 void __page_ref_mod_and_test(struct page *page, int v, int ret) in __page_ref_mod_and_test() argument 24 trace_page_ref_mod_and_test(page, v, ret); in __page_ref_mod_and_test() 29 void __page_ref_mod_and_return(struct page *page, int v, int ret) in __page_ref_mod_and_return() argument 31 trace_page_ref_mod_and_return(page, v, ret); in __page_ref_mod_and_return() 36 void __page_ref_mod_unless(struct page *page, int v, int u) in __page_ref_mod_unless() argument 38 trace_page_ref_mod_unless(page, v, u); in __page_ref_mod_unless() [all …]
|
/linux/drivers/iommu/ |
H A D | iommu-pages.h | 28 static inline void __iommu_alloc_account(struct page *page, int order) in __iommu_alloc_account() argument 32 mod_node_page_state(page_pgdat(page), NR_IOMMU_PAGES, pgcnt); in __iommu_alloc_account() 33 mod_lruvec_page_state(page, NR_SECONDARY_PAGETABLE, pgcnt); in __iommu_alloc_account() 41 static inline void __iommu_free_account(struct page *page, int order) in __iommu_free_account() argument 45 mod_node_page_state(page_pgdat(page), NR_IOMMU_PAGES, -pgcnt); in __iommu_free_account() 46 mod_lruvec_page_state(page, NR_SECONDARY_PAGETABLE, -pgcnt); in __iommu_free_account() 56 static inline struct page *__iommu_alloc_pages(gfp_t gfp, int order) in __iommu_alloc_pages() 58 struct page *page; in __iommu_alloc_pages() local 60 page = alloc_pages(gfp | __GFP_ZERO, order); in __iommu_alloc_pages() 61 if (unlikely(!page)) in __iommu_alloc_pages() [all …]
|
/linux/sound/pci/trident/ |
H A D | trident_memory.c | 22 #define __set_tlb_bus(trident,page,addr) \ argument 23 (trident)->tlb.entries[page] = cpu_to_le32((addr) & ~(SNDRV_TRIDENT_PAGE_SIZE-1)) 24 #define __tlb_to_addr(trident,page) \ argument 25 (dma_addr_t)le32_to_cpu((trident->tlb.entries[page]) & ~(SNDRV_TRIDENT_PAGE_SIZE - 1)) 32 #define set_tlb_bus(trident,page,addr) __set_tlb_bus(trident,page,addr) argument 34 #define set_silent_tlb(trident,page) __set_tlb_bus(trident, page, trident->tlb.silent_page->addr) argument 38 #define aligned_page_offset(page) ((page) << 12) argument 40 #define page_to_addr(trident,page) __tlb_to_addr(trident, page) argument 47 #define aligned_page_offset(page) ((page) << 13) argument 48 #define page_to_addr(trident,page) __tlb_to_addr(trident, (page) << 1) argument [all …]
|
/linux/include/trace/events/ |
H A D | page_ref.h | 15 TP_PROTO(struct page *page, int v), 17 TP_ARGS(page, v), 30 __entry->pfn = page_to_pfn(page); 31 __entry->flags = page->flags; 32 __entry->count = page_ref_count(page); 33 __entry->mapcount = atomic_read(&page->_mapcount); 34 __entry->mapping = page->mapping; 35 __entry->mt = get_pageblock_migratetype(page); 49 TP_PROTO(struct page *pag [all...] |
/linux/Documentation/trace/ |
H A D | ring-buffer-design.rst | 40 - A page outside the ring buffer used solely (for the most part) 44 - a pointer to the page that the reader will use next 47 - a pointer to the page that will be written to next 50 - a pointer to the page with the last finished non-nested write. 110 At initialization a reader page is allocated for the reader that is not 114 to the same page. 116 The reader page is initialized to have its next pointer pointing to 117 the head page, and its previous pointer pointing to a page before 118 the head page. 120 The reader has its own page to use. At start up time, this page is [all …]
|
/linux/mm/kmsan/ |
H A D | shadow.c | 22 #define shadow_page_for(page) ((page)->kmsan_shadow) argument 24 #define origin_page_for(page) ((page)->kmsan_origin) argument 26 static void *shadow_ptr_for(struct page *page) in shadow_ptr_for() argument 28 return page_address(shadow_page_for(page)); in shadow_ptr_for() 31 static void *origin_ptr_for(struct page *page) in origin_ptr_for() argument 33 return page_address(origin_page_for(page)); in origin_ptr_for() 36 page_has_metadata(struct page * page) page_has_metadata() argument 41 set_no_shadow_origin_page(struct page * page) set_no_shadow_origin_page() argument 127 struct page *page; kmsan_get_metadata() local 170 kmsan_alloc_page(struct page * page,unsigned int order,gfp_t flags) kmsan_alloc_page() argument 205 kmsan_free_page(struct page * page,unsigned int order) kmsan_free_page() argument 278 struct page *page; kmsan_init_alloc_meta_for_range() local 301 kmsan_setup_meta(struct page * page,struct page * shadow,struct page * origin,int order) kmsan_setup_meta() argument [all...] |
/linux/arch/openrisc/include/asm/ |
H A 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 …]
|
/linux/sound/pci/emu10k1/ |
H A D | memory.c | 21 #define __set_ptb_entry(emu,page,addr) \ argument 22 (((__le32 *)(emu)->ptb_pages.area)[page] = \ 23 cpu_to_le32(((addr) << (emu->address_mode)) | (page))) 24 #define __get_ptb_entry(emu, page) \ argument 25 (le32_to_cpu(((__le32 *)(emu)->ptb_pages.area)[page])) 33 #define aligned_page_offset(page) ((page) << PAGE_SHIFT) argument 37 #define set_ptb_entry(emu,page,addr) __set_ptb_entry(emu,page,addr) argument 39 #define set_silent_ptb(emu,page) __set_ptb_entry(emu,page,emu->silent_page.addr) argument 42 static inline void set_ptb_entry(struct snd_emu10k1 *emu, int page, dma_addr_t addr) in set_ptb_entry() argument 45 page *= UNIT_PAGES; in set_ptb_entry() [all …]
|
/linux/drivers/target/ |
H A D | target_core_stat.c | 48 static ssize_t target_stat_inst_show(struct config_item *item, char *page) in target_stat_inst_show() argument 52 return snprintf(page, PAGE_SIZE, "%u\n", hba->hba_index); in target_stat_inst_show() 55 static ssize_t target_stat_indx_show(struct config_item *item, char *page) in target_stat_indx_show() argument 57 return snprintf(page, PAGE_SIZE, "%u\n", to_stat_dev(item)->dev_index); in target_stat_indx_show() 60 static ssize_t target_stat_role_show(struct config_item *item, char *page) in target_stat_role_show() argument 62 return snprintf(page, PAGE_SIZE, "Target\n"); in target_stat_role_show() 65 static ssize_t target_stat_ports_show(struct config_item *item, char *page) in target_stat_ports_show() argument 67 return snprintf(page, PAGE_SIZE, "%u\n", to_stat_dev(item)->export_count); in target_stat_ports_show() 98 static ssize_t target_stat_tgt_inst_show(struct config_item *item, char *page) in target_stat_tgt_inst_show() argument 102 return snprintf(page, PAGE_SIZE, "%u\n", hba->hba_index); in target_stat_tgt_inst_show() [all …]
|
/linux/drivers/target/iscsi/ |
H A D | iscsi_target_stat.c | 51 char *page) in iscsi_stat_instance_inst_show() argument 53 return snprintf(page, PAGE_SIZE, "%u\n", in iscsi_stat_instance_inst_show() 58 char *page) in iscsi_stat_instance_min_ver_show() argument 60 return snprintf(page, PAGE_SIZE, "%u\n", ISCSI_DRAFT20_VERSION); in iscsi_stat_instance_min_ver_show() 64 char *page) in iscsi_stat_instance_max_ver_show() argument 66 return snprintf(page, PAGE_SIZE, "%u\n", ISCSI_DRAFT20_VERSION); in iscsi_stat_instance_max_ver_show() 70 char *page) in iscsi_stat_instance_portals_show() argument 72 return snprintf(page, PAGE_SIZE, "%u\n", in iscsi_stat_instance_portals_show() 77 char *page) in iscsi_stat_instance_nodes_show() argument 79 return snprintf(page, PAGE_SIZE, "%u\n", ISCSI_INST_NUM_NODES); in iscsi_stat_instance_nodes_show() [all …]
|
/linux/net/ceph/ |
H A D | pagelist.c | 32 struct page *page = list_entry(pl->head.prev, struct page, lru); in ceph_pagelist_unmap_tail() local 33 kunmap(page); in ceph_pagelist_unmap_tail() 44 struct page *page = list_first_entry(&pl->head, struct page, in ceph_pagelist_release() local 46 list_del(&page->lru); in ceph_pagelist_release() 47 __free_page(page); in ceph_pagelist_release() 56 struct page *page; in ceph_pagelist_addpage() local 59 page = __page_cache_alloc(GFP_NOFS); in ceph_pagelist_addpage() 61 page = list_first_entry(&pl->free_list, struct page, lru); in ceph_pagelist_addpage() 62 list_del(&page->lru); in ceph_pagelist_addpage() 65 if (!page) in ceph_pagelist_addpage() [all …]
|
/linux/drivers/nvme/target/ |
H A D | configfs.c | 66 static ssize_t nvmet_addr_adrfam_show(struct config_item *item, char *page) in nvmet_addr_adrfam_show() argument 73 return snprintf(page, PAGE_SIZE, "%s\n", in nvmet_addr_adrfam_show() 77 return snprintf(page, PAGE_SIZE, "\n"); in nvmet_addr_adrfam_show() 81 const char *page, size_t count) in nvmet_addr_adrfam_store() argument 90 if (sysfs_streq(page, nvmet_addr_family[i].name)) in nvmet_addr_adrfam_store() 94 pr_err("Invalid value '%s' for adrfam\n", page); in nvmet_addr_adrfam_store() 105 char *page) in nvmet_addr_portid_show() argument 109 return snprintf(page, PAGE_SIZE, "%d\n", le16_to_cpu(portid)); in nvmet_addr_portid_show() 113 const char *page, size_t count) in nvmet_addr_portid_store() argument 118 if (kstrtou16(page, 0, &portid)) { in nvmet_addr_portid_store() [all …]
|
/linux/drivers/xen/ |
H A D | balloon.c | 64 #include <asm/page.h> 75 #include <xen/page.h> 104 * Use one extent per PAGE_SIZE to avoid to break down the page into 133 /* We increase/decrease in batches which fit in a page */ 146 /* balloon_append: add the given page to the balloon. */ 147 static void balloon_append(struct page *page) in balloon_append() argument 149 if (!PageOffline(page)) in balloon_append() 150 __SetPageOffline(page); in balloon_append() 153 if (PageHighMem(page)) { in balloon_append() 166 struct page *page; balloon_retrieve() local 185 balloon_next_page(struct page * page) balloon_next_page() argument 340 xen_online_page(struct page * page,unsigned int order) xen_online_page() argument 390 struct page *page; increase_reservation() local 433 struct page *page, *tmp; decrease_reservation() local 607 struct page *page; xen_alloc_ballooned_pages() local [all...] |