Home
last modified time | relevance | path

Searched refs:page_list (Results 1 – 25 of 77) sorted by relevance

1234

/linux/drivers/infiniband/hw/mthca/
H A Dmthca_allocator.c117 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[p].page = NULL; in mthca_array_clear()
[all …]
H A Dmthca_eq.c231 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[i].buf) in mthca_create_eq()
574 eq->page_list[i].buf, in mthca_create_eq()
[all …]
/linux/drivers/xen/
H A Dunpopulated-alloc.c16 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()
/linux/arch/powerpc/kexec/
H A Dcore_32.c32 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()
/linux/drivers/infiniband/hw/usnic/
H A Dusnic_uiom.c50 ((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, chunk->nents); in usnic_uiom_get_pages()
[all …]
/linux/drivers/infiniband/core/
H A Dumem.c146 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()
/linux/mm/
H A Ddmapool.c49 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()
386 list_del(&page->page_list); in dma_pool_destroy()
/linux/arch/x86/kernel/
H A Dmachine_kexec_32.c163 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()
H A Dmachine_kexec_64.c297 unsigned long page_list[PAGES_NR]; in machine_kexec() local
329 page_list[PA_CONTROL_PAGE] = virt_to_phys(control_page); in machine_kexec()
330 page_list[VA_CONTROL_PAGE] = (unsigned long)control_page; in machine_kexec()
331 page_list[PA_TABLE_PAGE] = in machine_kexec()
335 page_list[PA_SWAP_PAGE] = (page_to_pfn(image->swap_page) in machine_kexec()
358 (unsigned long)page_list, in machine_kexec()
/linux/include/linux/
H A Ddm-io.h25 struct page_list { struct
26 struct page_list *next; argument
45 struct page_list *pl; argument
/linux/drivers/comedi/
H A Dcomedi_buf.c28 if (bm->page_list) { 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()
169 buf = &bm->page_list[0]; in __comedi_buf_alloc()
177 buf = &bm->page_list[i]; in __comedi_buf_alloc()
[all …]
/linux/drivers/net/ethernet/mellanox/mlx4/
H A Dmr.c693 int start_index, int npages, u64 *page_list) in mlx4_write_mtt_chunk() argument
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() argument
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() argument
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
[all …]
H A Dalloc.c619 buf->page_list = kcalloc(buf->nbufs, sizeof(*buf->page_list), in mlx4_buf_alloc()
621 if (!buf->page_list) in mlx4_buf_alloc()
625 buf->page_list[i].buf = in mlx4_buf_alloc()
628 if (!buf->page_list[i].buf) in mlx4_buf_alloc()
631 buf->page_list[i].map = t; in mlx4_buf_alloc()
653 if (buf->page_list[i].buf) in mlx4_buf_free()
656 buf->page_list[i].buf, in mlx4_buf_free()
657 buf->page_list[i].map); in mlx4_buf_free()
658 kfree(buf->page_list); in mlx4_buf_free()
H A Deq.c118 …return eq->page_list[offset / PAGE_SIZE].buf + (offset + (eqe_factor ? MLX4_EQ_ENTRY_SIZE : 0)) % … in get_eqe()
990 eq->page_list = kmalloc_array(npages, sizeof(*eq->page_list), in mlx4_create_eq()
992 if (!eq->page_list) in mlx4_create_eq()
996 eq->page_list[i].buf = NULL; in mlx4_create_eq()
1008 eq->page_list[i].buf = dma_alloc_coherent(&dev->persist-> in mlx4_create_eq()
1012 if (!eq->page_list[i].buf) in mlx4_create_eq()
1016 eq->page_list[i].map = t; in mlx4_create_eq()
1073 if (eq->page_list[i].buf) in mlx4_create_eq()
1075 eq->page_list[i].buf, in mlx4_create_eq()
1076 eq->page_list[i].map); in mlx4_create_eq()
[all …]
/linux/drivers/misc/genwqe/
H A Dcard_utils.c243 struct page **page_list, int num_pages, in genwqe_map_pages() argument
254 daddr = dma_map_page(&pci_dev->dev, page_list[i], in genwqe_map_pages()
568 m->page_list = kcalloc(m->nr_pages, in genwqe_user_vmap()
571 if (!m->page_list) { 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); /* ptrs to pages */ in genwqe_user_vmap()
590 unpin_user_pages_dirty_lock(m->page_list, rc, m->write); in genwqe_user_vmap()
595 rc = genwqe_map_pages(cd, m->page_list, m->nr_pages, m->dma_list); in genwqe_user_vmap()
602 unpin_user_pages_dirty_lock(m->page_list, m->nr_pages, m->write); in genwqe_user_vmap()
605 kfree(m->page_list); in genwqe_user_vmap()
[all …]
/linux/drivers/md/
H A Ddm-kcopyd.c61 struct page_list *pages;
96 static struct page_list zero_page_list;
218 static struct page_list *alloc_pl(gfp_t gfp) in alloc_pl()
220 struct page_list *pl; in alloc_pl()
235 static void free_pl(struct page_list *pl) in free_pl()
245 static void kcopyd_put_pages(struct dm_kcopyd_client *kc, struct page_list *pl) in kcopyd_put_pages()
247 struct page_list *next; in kcopyd_put_pages()
265 unsigned int nr, struct page_list **pages) in kcopyd_get_pages()
267 struct page_list *pl; in kcopyd_get_pages()
296 static void drop_pages(struct page_list *pl) in drop_pages()
[all …]
/linux/drivers/gpu/drm/vmwgfx/
H A Dvmwgfx_validation.h61 struct list_head page_list; member
90 .page_list = LIST_HEAD_INIT((_name).page_list), \
/linux/drivers/infiniband/sw/rxe/
H A Drxe_mr.c96 XA_STATE(xas, &mr->page_list, 0); in rxe_mr_fill_pages_from_sgt()
137 xa_init(&mr->page_list); in rxe_mr_init_user()
161 XA_STATE(xas, &mr->page_list, 0); in rxe_mr_alloc()
165 xa_init(&mr->page_list); in rxe_mr_alloc()
223 err = xa_err(xa_store(&mr->page_list, mr->nbuf, page, GFP_KERNEL)); in rxe_set_page()
255 page = xa_load(&mr->page_list, index); in rxe_mr_copy_xarray()
449 page = xa_load(&mr->page_list, index); in rxe_flush_pmem_iova()
498 page = xa_load(&mr->page_list, index); in rxe_mr_do_atomic_op()
556 page = xa_load(&mr->page_list, index); in rxe_mr_do_atomic_write()
730 xa_destroy(&mr->page_list); in rxe_mr_cleanup()
/linux/arch/arm/kernel/
H A Dmachine_kexec.c166 unsigned long page_list, reboot_entry_phys; in machine_kexec() local
179 page_list = image->head & PAGE_MASK; in machine_kexec()
190 data->kexec_indirection_page = page_list; in machine_kexec()
/linux/arch/sh/kernel/
H A Dmachine_kexec.c71 unsigned long page_list; in machine_kexec() local
101 page_list = image->head; in machine_kexec()
118 (*rnk)(page_list, reboot_code_buffer, in machine_kexec()
/linux/drivers/vfio/pci/mlx5/
H A Dcmd.c422 struct page **page_list; in mlx5vf_add_migration_pages() local
427 to_fill = min_t(unsigned int, npages, PAGE_SIZE / sizeof(*page_list)); in mlx5vf_add_migration_pages()
428 page_list = kvzalloc(to_fill * sizeof(*page_list), GFP_KERNEL_ACCOUNT); in mlx5vf_add_migration_pages()
429 if (!page_list) in mlx5vf_add_migration_pages()
434 page_list); in mlx5vf_add_migration_pages()
441 &buf->table, page_list, filled, 0, in mlx5vf_add_migration_pages()
449 memset(page_list, 0, filled * sizeof(*page_list)); in mlx5vf_add_migration_pages()
451 PAGE_SIZE / sizeof(*page_list)); in mlx5vf_add_migration_pages()
454 kvfree(page_list); in mlx5vf_add_migration_pages()
458 kvfree(page_list); in mlx5vf_add_migration_pages()
[all …]
/linux/Documentation/admin-guide/device-mapper/
H A Ddm-io.rst25 struct page_list {
26 struct page_list *next;
31 struct page_list *pl, unsigned int offset,
34 struct page_list *pl, unsigned int offset,
/linux/drivers/net/ethernet/mediatek/
H A Dmtk_wed.c639 struct mtk_wed_buf *page_list; in mtk_wed_tx_buffer_alloc() local
652 page_list = kcalloc(n_pages, sizeof(*page_list), GFP_KERNEL); in mtk_wed_tx_buffer_alloc()
653 if (!page_list) in mtk_wed_tx_buffer_alloc()
656 dev->tx_buf_ring.pages = page_list; in mtk_wed_tx_buffer_alloc()
684 page_list[page_idx].p = page; in mtk_wed_tx_buffer_alloc()
685 page_list[page_idx++].phy_addr = page_phys; in mtk_wed_tx_buffer_alloc()
733 struct mtk_wed_buf *page_list = dev->tx_buf_ring.pages; in mtk_wed_free_tx_buffer() local
737 if (!page_list) in mtk_wed_free_tx_buffer()
744 dma_addr_t page_phy = page_list[page_idx].phy_addr; in mtk_wed_free_tx_buffer()
745 void *page = page_list[page_idx++].p; in mtk_wed_free_tx_buffer()
[all …]
/linux/drivers/accel/qaic/
H A Dqaic_control.c196 struct page **page_list; member
334 put_page(xfer->page_list[i]); in free_dma_xfers()
335 kfree(xfer->page_list); in free_dma_xfers()
397 struct page **page_list; in find_and_map_user_pages() local
424 page_list = kmalloc_array(nr_pages, sizeof(*page_list), GFP_KERNEL | __GFP_NOWARN); in find_and_map_user_pages()
425 if (!page_list) { in find_and_map_user_pages()
434 ret = get_user_pages_fast(xfer_start_addr, nr_pages, 0, page_list); in find_and_map_user_pages()
449 ret = sg_alloc_table_from_pages(sgt, page_list, nr_pages, in find_and_map_user_pages()
462 xfer->page_list = page_list; in find_and_map_user_pages()
473 put_page(page_list[i]); in find_and_map_user_pages()
[all …]
/linux/include/uapi/linux/
H A Dvbox_vmmdev_types.h238 } page_list; member
261 } page_list; member

1234