/kernel/linux/linux-5.10/drivers/infiniband/hw/mthca/ |
H A D | mthca_allocator.c | 122 if (array->page_list[p].page) in mthca_array_get() 123 return array->page_list[p].page[index & MTHCA_ARRAY_MASK]; in mthca_array_get() 133 if (!array->page_list[p].page) in mthca_array_set() 134 array->page_list[p].page = (void **) get_zeroed_page(GFP_ATOMIC); in mthca_array_set() 136 if (!array->page_list[p].page) in mthca_array_set() 139 array->page_list[p].page[index & MTHCA_ARRAY_MASK] = value; in mthca_array_set() 140 ++array->page_list[p].used; in mthca_array_set() 149 if (--array->page_list[p].used == 0) { in mthca_array_clear() 150 free_page((unsigned long) array->page_list[p].page); in mthca_array_clear() 151 array->page_list[ in mthca_array_clear() [all...] |
H A D | mthca_eq.c | 231 return eq->page_list[off / PAGE_SIZE].buf + off % PAGE_SIZE; in get_eqe() 482 eq->page_list = kmalloc_array(npages, sizeof(*eq->page_list), in mthca_create_eq() 484 if (!eq->page_list) in mthca_create_eq() 488 eq->page_list[i].buf = NULL; in mthca_create_eq() 500 eq->page_list[i].buf = dma_alloc_coherent(&dev->pdev->dev, in mthca_create_eq() 502 if (!eq->page_list[i].buf) in mthca_create_eq() 506 dma_unmap_addr_set(&eq->page_list[i], mapping, t); in mthca_create_eq() 508 clear_page(eq->page_list[i].buf); in mthca_create_eq() 572 if (eq->page_list[ in mthca_create_eq() [all...] |
/kernel/linux/linux-6.6/drivers/infiniband/hw/mthca/ |
H A D | mthca_allocator.c | 117 if (array->page_list[p].page) in mthca_array_get() 118 return array->page_list[p].page[index & MTHCA_ARRAY_MASK]; in mthca_array_get() 128 if (!array->page_list[p].page) in mthca_array_set() 129 array->page_list[p].page = (void **) get_zeroed_page(GFP_ATOMIC); in mthca_array_set() 131 if (!array->page_list[p].page) in mthca_array_set() 134 array->page_list[p].page[index & MTHCA_ARRAY_MASK] = value; in mthca_array_set() 135 ++array->page_list[p].used; in mthca_array_set() 144 if (--array->page_list[p].used == 0) { in mthca_array_clear() 145 free_page((unsigned long) array->page_list[p].page); in mthca_array_clear() 146 array->page_list[ in mthca_array_clear() [all...] |
H A D | mthca_eq.c | 231 return eq->page_list[off / PAGE_SIZE].buf + off % PAGE_SIZE; in get_eqe() 482 eq->page_list = kmalloc_array(npages, sizeof(*eq->page_list), in mthca_create_eq() 484 if (!eq->page_list) in mthca_create_eq() 488 eq->page_list[i].buf = NULL; in mthca_create_eq() 500 eq->page_list[i].buf = dma_alloc_coherent(&dev->pdev->dev, in mthca_create_eq() 502 if (!eq->page_list[i].buf) in mthca_create_eq() 506 dma_unmap_addr_set(&eq->page_list[i], mapping, t); in mthca_create_eq() 508 clear_page(eq->page_list[i].buf); in mthca_create_eq() 572 if (eq->page_list[ in mthca_create_eq() [all...] |
/kernel/linux/linux-5.10/drivers/xen/ |
H A D | unpopulated-alloc.c | 15 static struct page *page_list; variable 89 pg->zone_device_data = page_list; in fill_list() 90 page_list = pg; in fill_list() 124 struct page *pg = page_list; in xen_alloc_unpopulated_pages() 127 page_list = pg->zone_device_data; in xen_alloc_unpopulated_pages() 138 pages[j]->zone_device_data = page_list; in xen_alloc_unpopulated_pages() 139 page_list = pages[j]; in xen_alloc_unpopulated_pages() 165 pages[i]->zone_device_data = page_list; in xen_free_unpopulated_pages() 166 page_list = pages[i]; in xen_free_unpopulated_pages() 195 pg->zone_device_data = page_list; in init() [all...] |
/kernel/linux/linux-6.6/drivers/xen/ |
H A D | unpopulated-alloc.c | 16 static struct page *page_list; variable 131 pg->zone_device_data = page_list; in fill_list() 132 page_list = pg; in fill_list() 179 struct page *pg = page_list; in xen_alloc_unpopulated_pages() 182 page_list = pg->zone_device_data; in xen_alloc_unpopulated_pages() 193 pages[j]->zone_device_data = page_list; in xen_alloc_unpopulated_pages() 194 page_list = pages[j]; in xen_alloc_unpopulated_pages() 225 pages[i]->zone_device_data = page_list; in xen_free_unpopulated_pages() 226 page_list = pages[i]; in xen_free_unpopulated_pages()
|
/kernel/linux/linux-5.10/mm/ |
H A D | dmapool.c | 16 * allocated pages. Each page in the page_list is split into blocks of at 43 struct list_head page_list; member 54 struct list_head page_list; member 86 list_for_each_entry(page, &pool->page_list, page_list) { in show_pools() 163 INIT_LIST_HEAD(&retval->page_list); in dma_pool_create() 255 list_del(&page->page_list); in pool_free_page() 285 list_for_each_entry_safe(page, tmp, &pool->page_list, page_list) { in dma_pool_destroy() 294 list_del(&page->page_list); in dma_pool_destroy() [all...] |
/kernel/linux/linux-5.10/arch/powerpc/kexec/ |
H A D | core_32.c | 32 unsigned long page_list; in default_machine_kexec() local 43 page_list = image->head; in default_machine_kexec() 59 relocate_new_kernel(page_list, reboot_code_buffer_phys, image->start); in default_machine_kexec() 63 (*rnk)(page_list, reboot_code_buffer_phys, image->start); in default_machine_kexec()
|
/kernel/linux/linux-6.6/arch/powerpc/kexec/ |
H A D | core_32.c | 32 unsigned long page_list; in default_machine_kexec() local 43 page_list = image->head; in default_machine_kexec() 59 relocate_new_kernel(page_list, reboot_code_buffer_phys, image->start); in default_machine_kexec() 63 (*rnk)(page_list, reboot_code_buffer_phys, image->start); in default_machine_kexec()
|
/kernel/linux/linux-5.10/drivers/infiniband/hw/usnic/ |
H A D | usnic_uiom.c | 51 ((PAGE_SIZE - offsetof(struct usnic_uiom_chunk, page_list)) /\ 52 ((void *) &((struct usnic_uiom_chunk *) 0)->page_list[1] - \ 53 (void *) &((struct usnic_uiom_chunk *) 0)->page_list[0])) 75 for_each_sg(chunk->page_list, sg, chunk->nents, i) { in usnic_uiom_put_pages() 89 struct page **page_list; in usnic_uiom_get_pages() local 119 page_list = (struct page **) __get_free_page(GFP_KERNEL); in usnic_uiom_get_pages() 120 if (!page_list) in usnic_uiom_get_pages() 148 page_list, NULL); in usnic_uiom_get_pages() 157 chunk = kmalloc(struct_size(chunk, page_list, in usnic_uiom_get_pages() 166 sg_init_table(chunk->page_list, chun in usnic_uiom_get_pages() [all...] |
/kernel/linux/linux-6.6/drivers/infiniband/hw/usnic/ |
H A D | usnic_uiom.c | 50 ((PAGE_SIZE - offsetof(struct usnic_uiom_chunk, page_list)) /\ 51 ((void *) &((struct usnic_uiom_chunk *) 0)->page_list[1] - \ 52 (void *) &((struct usnic_uiom_chunk *) 0)->page_list[0])) 74 for_each_sg(chunk->page_list, sg, chunk->nents, i) { in usnic_uiom_put_pages() 89 struct page **page_list; in usnic_uiom_get_pages() local 117 page_list = (struct page **) __get_free_page(GFP_KERNEL); in usnic_uiom_get_pages() 118 if (!page_list) in usnic_uiom_get_pages() 143 gup_flags, page_list); in usnic_uiom_get_pages() 152 chunk = kmalloc(struct_size(chunk, page_list, in usnic_uiom_get_pages() 161 sg_init_table(chunk->page_list, chun in usnic_uiom_get_pages() [all...] |
/kernel/linux/linux-5.10/drivers/infiniband/core/ |
H A D | umem.c | 145 struct page **page_list; in ib_umem_get() local 185 page_list = (struct page **) __get_free_page(GFP_KERNEL); in ib_umem_get() 186 if (!page_list) { in ib_umem_get() 217 gup_flags | FOLL_LONGTERM, page_list); in ib_umem_get() 223 sg = __sg_alloc_table_from_pages(&umem->sg_head, page_list, ret, in ib_umem_get() 229 unpin_user_pages_dirty_lock(page_list, ret, 0); in ib_umem_get() 254 free_page((unsigned long) page_list); in ib_umem_get()
|
/kernel/linux/linux-6.6/drivers/infiniband/core/ |
H A D | umem.c | 146 struct page **page_list; in ib_umem_get() local 185 page_list = (struct page **) __get_free_page(GFP_KERNEL); in ib_umem_get() 186 if (!page_list) { in ib_umem_get() 217 gup_flags, page_list); in ib_umem_get() 226 &umem->sgt_append, page_list, pinned, 0, in ib_umem_get() 230 unpin_user_pages_dirty_lock(page_list, pinned, 0); in ib_umem_get() 248 free_page((unsigned long) page_list); in ib_umem_get()
|
/kernel/linux/linux-5.10/include/linux/ |
H A D | dm-io.h | 23 struct page_list { struct 24 struct page_list *next; 43 struct page_list *pl;
|
/kernel/linux/linux-6.6/include/linux/ |
H A D | dm-io.h | 25 struct page_list { struct 26 struct page_list *next; 45 struct page_list *pl;
|
/kernel/linux/linux-5.10/drivers/net/ethernet/mellanox/mlx4/ |
H A D | mr.c | 693 int start_index, int npages, u64 *page_list) in mlx4_write_mtt_chunk() 710 mtts[i] = cpu_to_be64(page_list[i] | MLX4_MTT_FLAG_PRESENT); in mlx4_write_mtt_chunk() 719 int start_index, int npages, u64 *page_list) in __mlx4_write_mtt() 734 err = mlx4_write_mtt_chunk(dev, mtt, start_index, chunk, page_list); in __mlx4_write_mtt() 739 page_list += chunk; in __mlx4_write_mtt() 747 int start_index, int npages, u64 *page_list) in mlx4_write_mtt() 770 inbox[i + 2] = cpu_to_be64(page_list[i] | in mlx4_write_mtt() 780 page_list += chunk; in mlx4_write_mtt() 786 return __mlx4_write_mtt(dev, mtt, start_index, npages, page_list); in mlx4_write_mtt() 793 u64 *page_list; in mlx4_buf_write_mtt() local 692 mlx4_write_mtt_chunk(struct mlx4_dev *dev, struct mlx4_mtt *mtt, int start_index, int npages, u64 *page_list) mlx4_write_mtt_chunk() argument 718 __mlx4_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt, int start_index, int npages, u64 *page_list) __mlx4_write_mtt() argument 746 mlx4_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt, int start_index, int npages, u64 *page_list) mlx4_write_mtt() argument [all...] |
/kernel/linux/linux-6.6/drivers/net/ethernet/mellanox/mlx4/ |
H A D | mr.c | 693 int start_index, int npages, u64 *page_list) in mlx4_write_mtt_chunk() 710 mtts[i] = cpu_to_be64(page_list[i] | MLX4_MTT_FLAG_PRESENT); in mlx4_write_mtt_chunk() 719 int start_index, int npages, u64 *page_list) in __mlx4_write_mtt() 734 err = mlx4_write_mtt_chunk(dev, mtt, start_index, chunk, page_list); in __mlx4_write_mtt() 739 page_list += chunk; in __mlx4_write_mtt() 747 int start_index, int npages, u64 *page_list) in mlx4_write_mtt() 770 inbox[i + 2] = cpu_to_be64(page_list[i] | in mlx4_write_mtt() 780 page_list += chunk; in mlx4_write_mtt() 786 return __mlx4_write_mtt(dev, mtt, start_index, npages, page_list); in mlx4_write_mtt() 793 u64 *page_list; in mlx4_buf_write_mtt() local 692 mlx4_write_mtt_chunk(struct mlx4_dev *dev, struct mlx4_mtt *mtt, int start_index, int npages, u64 *page_list) mlx4_write_mtt_chunk() argument 718 __mlx4_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt, int start_index, int npages, u64 *page_list) __mlx4_write_mtt() argument 746 mlx4_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt, int start_index, int npages, u64 *page_list) mlx4_write_mtt() argument [all...] |
/kernel/linux/linux-5.10/drivers/staging/comedi/ |
H A D | comedi_buf.c | 29 if (bm->page_list) { in comedi_buf_map_kref_release() 33 * Address is in page_list[0]. in comedi_buf_map_kref_release() 35 buf = &bm->page_list[0]; in comedi_buf_map_kref_release() 41 buf = &bm->page_list[i]; in comedi_buf_map_kref_release() 46 vfree(bm->page_list); in comedi_buf_map_kref_release() 93 bm->page_list = vzalloc(sizeof(*buf) * n_pages); in comedi_buf_map_alloc() 94 if (!bm->page_list) in comedi_buf_map_alloc() 112 buf = &bm->page_list[i]; in comedi_buf_map_alloc() 120 buf = &bm->page_list[i]; in comedi_buf_map_alloc() 168 * Address is in page_list[ in __comedi_buf_alloc() [all...] |
/kernel/linux/linux-6.6/drivers/comedi/ |
H A D | comedi_buf.c | 28 if (bm->page_list) { in comedi_buf_map_kref_release() 32 * Address is in page_list[0]. in comedi_buf_map_kref_release() 34 buf = &bm->page_list[0]; in comedi_buf_map_kref_release() 40 buf = &bm->page_list[i]; in comedi_buf_map_kref_release() 45 vfree(bm->page_list); in comedi_buf_map_kref_release() 92 bm->page_list = vzalloc(sizeof(*buf) * n_pages); in comedi_buf_map_alloc() 93 if (!bm->page_list) in comedi_buf_map_alloc() 111 buf = &bm->page_list[i]; in comedi_buf_map_alloc() 119 buf = &bm->page_list[i]; in comedi_buf_map_alloc() 167 * Address is in page_list[ in __comedi_buf_alloc() [all...] |
/kernel/linux/linux-5.10/arch/x86/kernel/ |
H A D | machine_kexec_32.c | 174 unsigned long page_list[PAGES_NR]; in machine_kexec() local 212 page_list[PA_CONTROL_PAGE] = __pa(control_page); in machine_kexec() 213 page_list[VA_CONTROL_PAGE] = (unsigned long)control_page; in machine_kexec() 214 page_list[PA_PGD] = __pa(image->arch.pgd); in machine_kexec() 217 page_list[PA_SWAP_PAGE] = (page_to_pfn(image->swap_page) in machine_kexec() 240 (unsigned long)page_list, in machine_kexec()
|
/kernel/linux/linux-6.6/arch/x86/kernel/ |
H A D | machine_kexec_32.c | 163 unsigned long page_list[PAGES_NR]; in machine_kexec() local 201 page_list[PA_CONTROL_PAGE] = __pa(control_page); in machine_kexec() 202 page_list[VA_CONTROL_PAGE] = (unsigned long)control_page; in machine_kexec() 203 page_list[PA_PGD] = __pa(image->arch.pgd); in machine_kexec() 206 page_list[PA_SWAP_PAGE] = (page_to_pfn(image->swap_page) in machine_kexec() 229 (unsigned long)page_list, in machine_kexec()
|
/kernel/linux/linux-6.6/mm/ |
H A D | dmapool.c | 16 * allocated pages. Each page in the page_list is split into blocks of at 49 struct list_head page_list; member 64 struct list_head page_list; member 124 list_for_each_entry(page, &pool->page_list, page_list) { in pool_find_page() 262 INIT_LIST_HEAD(&retval->page_list); in dma_pool_create() 330 list_add(&page->page_list, &pool->page_list); in pool_initialise_page() 382 list_for_each_entry_safe(page, tmp, &pool->page_list, page_list) { in dma_pool_destroy() [all...] |
/kernel/linux/linux-5.10/drivers/infiniband/hw/hns/ |
H A D | hns_roce_alloc.c | 175 if (buf->page_list[i].buf) in hns_roce_buf_free() 177 buf->page_list[i].buf, in hns_roce_buf_free() 178 buf->page_list[i].map); in hns_roce_buf_free() 179 kfree(buf->page_list); in hns_roce_buf_free() 180 buf->page_list = NULL; in hns_roce_buf_free() 200 buf->page_list = NULL; in hns_roce_buf_alloc() 227 buf->page_list = buf_list; in hns_roce_buf_alloc()
|
/kernel/linux/linux-5.10/drivers/misc/genwqe/ |
H A D | card_utils.c | 243 struct page **page_list, int num_pages, in genwqe_map_pages() 254 daddr = pci_map_page(pci_dev, page_list[i], in genwqe_map_pages() 537 * page_list and pci_alloc_consistent for the sg_list. 539 * be fixed with some effort. The page_list must be split into 559 /* determine space needed for page_list. */ in genwqe_user_vmap() 568 m->page_list = kcalloc(m->nr_pages, in genwqe_user_vmap() 571 if (!m->page_list) { in genwqe_user_vmap() 572 dev_err(&pci_dev->dev, "err: alloc page_list failed\n"); in genwqe_user_vmap() 578 m->dma_list = (dma_addr_t *)(m->page_list + m->nr_pages); in genwqe_user_vmap() 584 m->page_list); /* ptr in genwqe_user_vmap() 242 genwqe_map_pages(struct genwqe_dev *cd, struct page **page_list, int num_pages, dma_addr_t *dma_list) genwqe_map_pages() argument [all...] |
/kernel/linux/linux-5.10/drivers/gpu/drm/ttm/ |
H A D | ttm_page_alloc_dma.c | 115 * @page_list: The link to the 'page_list' in 'struct dma_pool'. 122 struct list_head page_list; member 365 list_del(&d_page->page_list); in ttm_dma_page_put() 375 list_for_each_entry_safe(d_page, tmp, d_pages, page_list) in ttm_dma_pages_put() 387 list_for_each_entry_safe(d_page, tmp, d_pages, page_list) { in ttm_dma_pages_put() 388 list_del(&d_page->page_list); in ttm_dma_pages_put() 435 page_list) { in ttm_dma_page_pool_free() 440 list_move(&dma_p->page_list, &d_pages); in ttm_dma_page_pool_free() 678 list_for_each_entry_safe(d_page, tmp, d_pages, page_list) { in ttm_dma_handle_caching_state_failure() [all...] |