Home
last modified time | relevance | path

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

123

/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 …]
H A Dmthca_provider.h54 struct mthca_buf_list *page_list; member
96 struct mthca_buf_list *page_list; member
/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.c33 unsigned long page_list; in default_machine_kexec() local
44 page_list = image->head; in default_machine_kexec()
60 relocate_new_kernel(page_list, reboot_code_buffer_phys, image->start); in default_machine_kexec()
64 (*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.c168 struct page **page_list; in ib_umem_get() local
207 page_list = (struct page **) __get_free_page(GFP_KERNEL); in ib_umem_get()
208 if (!page_list) { in ib_umem_get()
239 gup_flags, page_list); in ib_umem_get()
248 &umem->sgt_append, page_list, pinned, 0, in ib_umem_get()
252 unpin_user_pages_dirty_lock(page_list, pinned, 0); in ib_umem_get()
270 free_page((unsigned long) page_list); in ib_umem_get()
/linux/arch/x86/kernel/
H A Dmachine_kexec_32.c164 unsigned long page_list[PAGES_NR]; in machine_kexec() local
196 page_list[PA_CONTROL_PAGE] = __pa(control_page); in machine_kexec()
197 page_list[VA_CONTROL_PAGE] = (unsigned long)control_page; in machine_kexec()
198 page_list[PA_PGD] = __pa(image->arch.pgd); in machine_kexec()
201 page_list[PA_SWAP_PAGE] = (page_to_pfn(image->swap_page) in machine_kexec()
224 (unsigned long)page_list, in machine_kexec()
/linux/drivers/comedi/
H A Dcomedi_buf.c28 if (bm->page_list) { in comedi_buf_map_kref_release()
31 buf = &bm->page_list[i]; in comedi_buf_map_kref_release()
38 buf = &bm->page_list[i]; in comedi_buf_map_kref_release()
43 vfree(bm->page_list); in comedi_buf_map_kref_release()
84 bm->page_list = vzalloc(sizeof(*buf) * n_pages); in comedi_buf_map_alloc()
85 if (!bm->page_list) in comedi_buf_map_alloc()
90 buf = &bm->page_list[i]; in comedi_buf_map_alloc()
99 buf = &bm->page_list[i]; in comedi_buf_map_alloc()
165 void *b = bm->page_list[pg].virt_addr + pgoff; in comedi_buf_map_access()
328 struct comedi_buf_page *buf_page_list = async->buf_map->page_list; in comedi_buf_munge()
[all …]
/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/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/arch/arm/kernel/
H A Dmachine_kexec.c143 unsigned long page_list, reboot_entry_phys; in machine_kexec() local
156 page_list = image->head & PAGE_MASK; in machine_kexec()
167 data->kexec_indirection_page = page_list; in machine_kexec()
/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()
442 page = xa_load(&mr->page_list, index); in rxe_mr_flush_pmem_iova()
512 page = xa_load(&mr->page_list, index); in rxe_mr_do_atomic_op()
562 page = xa_load(&mr->page_list, index); in rxe_mr_do_atomic_write()
728 xa_destroy(&mr->page_list); in rxe_mr_cleanup()
/linux/drivers/net/ethernet/mellanox/mlx4/
H A Dalloc.c597 buf->page_list = kcalloc(buf->nbufs, sizeof(*buf->page_list), in mlx4_buf_alloc()
599 if (!buf->page_list) in mlx4_buf_alloc()
603 buf->page_list[i].buf = in mlx4_buf_alloc()
606 if (!buf->page_list[i].buf) in mlx4_buf_alloc()
609 buf->page_list[i].map = t; in mlx4_buf_alloc()
631 if (buf->page_list[i].buf) in mlx4_buf_free()
634 buf->page_list[i].buf, in mlx4_buf_free()
635 buf->page_list[i].map); in mlx4_buf_free()
636 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/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/virtio/
H A Dmigrate.c67 struct page **page_list; in virtiovf_add_migration_pages() local
73 to_fill = min_t(unsigned int, npages, PAGE_SIZE / sizeof(*page_list)); in virtiovf_add_migration_pages()
74 page_list = kvcalloc(to_fill, sizeof(*page_list), GFP_KERNEL_ACCOUNT); in virtiovf_add_migration_pages()
75 if (!page_list) in virtiovf_add_migration_pages()
80 page_list); in virtiovf_add_migration_pages()
86 ret = sg_alloc_append_table_from_pages(&buf->table, page_list, in virtiovf_add_migration_pages()
94 memset(page_list, 0, filled * sizeof(*page_list)); in virtiovf_add_migration_pages()
96 PAGE_SIZE / sizeof(*page_list)); in virtiovf_add_migration_pages()
99 kvfree(page_list); in virtiovf_add_migration_pages()
104 __free_page(page_list[i]); in virtiovf_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/vfio/pci/mlx5/
H A Dcmd.c379 struct page **page_list, u32 *mkey_in, in register_dma_pages() argument
394 page_to_phys(page_list[i]), mapped, in register_dma_pages()
407 addr = dma_map_page(mdev->device, page_list[i], 0, in register_dma_pages()
439 ret = register_dma_pages(mdev, buf->npages, buf->page_list, in mlx5vf_dma_data_buffer()
459 static void free_page_list(u32 npages, struct page **page_list) in free_page_list() argument
465 __free_page(page_list[i]); in free_page_list()
467 kvfree(page_list); in free_page_list()
485 free_page_list(buf->npages, buf->page_list); in mlx5vf_free_data_buffer()
489 static int mlx5vf_add_pages(struct page ***page_list, unsigned int npages) in mlx5vf_add_pages() argument
494 *page_list = in mlx5vf_add_pages()
[all …]
H A Dcmd.h56 struct page **page_list; member
132 struct page **page_list; member
234 return buf->page_list[page_entry]; in mlx5vf_get_migration_page()
/linux/drivers/net/ethernet/mediatek/
H A Dmtk_wed.c646 struct mtk_wed_buf *page_list; in mtk_wed_tx_buffer_alloc() local
659 page_list = kcalloc(n_pages, sizeof(*page_list), GFP_KERNEL); in mtk_wed_tx_buffer_alloc()
660 if (!page_list) in mtk_wed_tx_buffer_alloc()
663 dev->tx_buf_ring.pages = page_list; in mtk_wed_tx_buffer_alloc()
691 page_list[page_idx].p = page; in mtk_wed_tx_buffer_alloc()
692 page_list[page_idx++].phy_addr = page_phys; in mtk_wed_tx_buffer_alloc()
740 struct mtk_wed_buf *page_list = dev->tx_buf_ring.pages; in mtk_wed_free_tx_buffer() local
744 if (!page_list) in mtk_wed_free_tx_buffer()
751 dma_addr_t page_phy = page_list[page_idx].phy_addr; in mtk_wed_free_tx_buffer()
752 void *page = page_list[page_idx++].p; in mtk_wed_free_tx_buffer()
[all …]
/linux/drivers/accel/qaic/
H A Dqaic_control.c197 struct page **page_list; member
336 put_page(xfer->page_list[i]); in free_dma_xfers()
337 kfree(xfer->page_list); in free_dma_xfers()
399 struct page **page_list; in find_and_map_user_pages() local
426 page_list = kmalloc_array(nr_pages, sizeof(*page_list), GFP_KERNEL | __GFP_NOWARN); in find_and_map_user_pages()
427 if (!page_list) { in find_and_map_user_pages()
436 ret = get_user_pages_fast(xfer_start_addr, nr_pages, 0, page_list); in find_and_map_user_pages()
451 ret = sg_alloc_table_from_pages(sgt, page_list, nr_pages, in find_and_map_user_pages()
464 xfer->page_list = page_list; in find_and_map_user_pages()
475 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

123