Home
last modified time | relevance | path

Searched refs:pfns (Results 1 – 25 of 29) sorted by relevance

12

/openbmc/linux/drivers/iommu/iommufd/
H A Dpages.c268 unsigned long *pfns; member
279 batch->pfns[0] = 0; in batch_clear()
297 batch->pfns[0] = batch->pfns[batch->end - 1] + in batch_clear_carry()
310 batch->pfns[0] += skip_pfns; in batch_skip_carry()
318 const size_t elmsz = sizeof(*batch->pfns) + sizeof(*batch->npfns); in __batch_init()
321 batch->pfns = temp_kmalloc(&size, backup, backup_len); in __batch_init()
322 if (!batch->pfns) in __batch_init()
327 batch->npfns = (u32 *)(batch->pfns + batch->array_size); in __batch_init()
345 if (batch->pfns != backup) in batch_destroy()
346 kfree(batch->pfns); in batch_destroy()
[all …]
H A Dselftest.c105 struct xarray pfns; member
180 xa_init(&mock->pfns); in mock_domain_alloc()
189 WARN_ON(!xa_empty(&mock->pfns)); in mock_domain_free()
220 old = xa_store(&mock->pfns, iova / MOCK_IO_PAGE_SIZE, in mock_domain_map_pages()
227 xa_erase(&mock->pfns, in mock_domain_map_pages()
260 ent = xa_erase(&mock->pfns, iova / MOCK_IO_PAGE_SIZE); in mock_domain_unmap_pages()
294 ent = xa_load(&mock->pfns, iova / MOCK_IO_PAGE_SIZE); in mock_domain_iova_to_phys()
566 ent = xa_load(&mock->pfns, iova / MOCK_IO_PAGE_SIZE); in iommufd_test_md_check_pa()
/openbmc/u-boot/drivers/fpga/
H A Dstratixv.c44 altera_board_specific_func *pfns = desc->iface_fns; in stratixv_load() local
56 if (pfns->pre) in stratixv_load()
57 (pfns->pre)(cookie); in stratixv_load()
60 if (pfns->config) { in stratixv_load()
62 (pfns->config)(false, true, cookie); in stratixv_load()
68 (pfns->config)(true, true, cookie); in stratixv_load()
75 if (pfns->write) { in stratixv_load()
80 ret = (pfns->write)(rbf_data, rbf_size, true, cookie); in stratixv_load()
94 if (pfns->done) { in stratixv_load()
95 ret = (pfns->done)(cookie); in stratixv_load()
H A Dlattice.c18 static lattice_board_specific_func *pfns; variable
73 pfns->jtag_set_tdi(a_ucValue); in writePort()
76 pfns->jtag_set_tck(a_ucValue); in writePort()
79 pfns->jtag_set_tms(a_ucValue); in writePort()
88 return pfns->jtag_get_tdo(); in readPort()
294 pfns = desc->iface_fns; in lattice_load()
/openbmc/linux/drivers/xen/
H A Dxlate_mmu.c193 xen_pfn_t *pfns; member
201 info->pfns[info->idx++] = gfn; in setup_balloon_gfn()
218 xen_pfn_t *pfns; in xen_xlate_map_ballooned_pages() local
230 pfns = kcalloc(nr_grant_frames, sizeof(pfns[0]), GFP_KERNEL); in xen_xlate_map_ballooned_pages()
231 if (!pfns) { in xen_xlate_map_ballooned_pages()
240 kfree(pfns); in xen_xlate_map_ballooned_pages()
244 data.pfns = pfns; in xen_xlate_map_ballooned_pages()
254 kfree(pfns); in xen_xlate_map_ballooned_pages()
259 *gfns = pfns; in xen_xlate_map_ballooned_pages()
H A Dprivcmd.c734 xen_pfn_t *pfns = NULL; in privcmd_ioctl_mmap_resource() local
769 pfns = kcalloc(kdata.num, sizeof(*pfns), GFP_KERNEL | __GFP_NOWARN); in privcmd_ioctl_mmap_resource()
770 if (!pfns) { in privcmd_ioctl_mmap_resource()
790 pfns[i] = pfn + (i % XEN_PFN_PER_PAGE); in privcmd_ioctl_mmap_resource()
797 set_xen_guest_handle(xdata.frame_list, pfns); in privcmd_ioctl_mmap_resource()
813 int num, *errs = (int *)pfns; in privcmd_ioctl_mmap_resource()
815 BUILD_BUG_ON(sizeof(*errs) > sizeof(*pfns)); in privcmd_ioctl_mmap_resource()
818 pfns, kdata.num, errs, in privcmd_ioctl_mmap_resource()
837 kfree(pfns); in privcmd_ioctl_mmap_resource()
/openbmc/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_hmm.c177 unsigned long *pfns; in amdgpu_hmm_range_get_pages() local
184 pfns = kvmalloc_array(npages, sizeof(*pfns), GFP_KERNEL); in amdgpu_hmm_range_get_pages()
185 if (unlikely(!pfns)) { in amdgpu_hmm_range_get_pages()
194 hmm_range->hmm_pfns = pfns; in amdgpu_hmm_range_get_pages()
231 hmm_range->hmm_pfns = pfns; in amdgpu_hmm_range_get_pages()
239 pages[i] = hmm_pfn_to_page(pfns[i]); in amdgpu_hmm_range_get_pages()
246 kvfree(pfns); in amdgpu_hmm_range_get_pages()
/openbmc/linux/drivers/gpu/drm/i915/gem/
H A Di915_gem_pages.c333 unsigned long stack[32], *pfns = stack, i; in i915_gem_object_map_pfn() local
342 pfns = kvmalloc_array(n_pfn, sizeof(*pfns), GFP_KERNEL); in i915_gem_object_map_pfn()
343 if (!pfns) in i915_gem_object_map_pfn()
349 pfns[i++] = (iomap + addr) >> PAGE_SHIFT; in i915_gem_object_map_pfn()
350 vaddr = vmap_pfn(pfns, n_pfn, pgprot_writecombine(PAGE_KERNEL_IO)); in i915_gem_object_map_pfn()
351 if (pfns != stack) in i915_gem_object_map_pfn()
352 kvfree(pfns); in i915_gem_object_map_pfn()
/openbmc/linux/Documentation/translations/zh_CN/mm/
H A Dhmm.rst134 这两个函数都将 CPU 页表条目复制到它们的 pfns 数组参数中。该数组中的每个条目对应于虚拟
171 /* Use pfns array content to update device page table,
185 的故障或快照策略,而不必为 pfns 数组中的每个条目设置它们。
199 range->pfns[index_of_write] = HMM_PFN_REQ_WRITE;
H A Dmemory-model.rst115 为给定的pfns范围执行足够的内存热插拔来开启 :c:func:`pfn_to_page`,
/openbmc/linux/drivers/virtio/
H A Dvirtio_balloon.c108 __virtio32 pfns[VIRTIO_BALLOON_ARRAY_PFNS_MAX]; member
150 sg_init_one(&sg, vb->pfns, sizeof(vb->pfns[0]) * vb->num_pfns); in tell_host()
189 __virtio32 pfns[], struct page *page) in set_page_pfns() argument
200 pfns[i] = cpu_to_virtio32(vb->vdev, in set_page_pfns()
212 num = min(num, ARRAY_SIZE(vb->pfns)); in fill_balloon()
237 set_page_pfns(vb, vb->pfns + vb->num_pfns, page); in fill_balloon()
276 num = min(num, ARRAY_SIZE(vb->pfns)); in leak_balloon()
286 set_page_pfns(vb, vb->pfns + vb->num_pfns, page); in leak_balloon()
788 set_page_pfns(vb, vb->pfns, newpage); in virtballoon_migratepage()
796 set_page_pfns(vb, vb->pfns, page); in virtballoon_migratepage()
/openbmc/linux/drivers/gpu/drm/nouveau/
H A Dnouveau_svm.h34 void nouveau_pfns_free(u64 *pfns);
36 unsigned long addr, u64 *pfns, unsigned long npages);
H A Dnouveau_dmem.c665 dma_addr_t *dma_addrs, u64 *pfns) in nouveau_dmem_migrate_chunk() argument
672 args->src[i], dma_addrs + nr_dma, pfns + i); in nouveau_dmem_migrate_chunk()
681 nouveau_pfns_map(svmm, args->vma->vm_mm, args->start, pfns, i); in nouveau_dmem_migrate_chunk()
707 u64 *pfns; in nouveau_dmem_migrate_vma() local
724 pfns = nouveau_pfns_alloc(max); in nouveau_dmem_migrate_vma()
725 if (!pfns) in nouveau_dmem_migrate_vma()
740 pfns); in nouveau_dmem_migrate_vma()
746 nouveau_pfns_free(pfns); in nouveau_dmem_migrate_vma()
H A Dnouveau_svm.c900 nouveau_pfns_to_args(void *pfns) in nouveau_pfns_to_args() argument
902 return container_of(pfns, struct nouveau_pfnmap_args, p.phys); in nouveau_pfns_to_args()
922 nouveau_pfns_free(u64 *pfns) in nouveau_pfns_free() argument
924 struct nouveau_pfnmap_args *args = nouveau_pfns_to_args(pfns); in nouveau_pfns_free()
931 unsigned long addr, u64 *pfns, unsigned long npages) in nouveau_pfns_map() argument
933 struct nouveau_pfnmap_args *args = nouveau_pfns_to_args(pfns); in nouveau_pfns_map()
/openbmc/linux/arch/powerpc/kvm/
H A Dbook3s_hv_uvmem.c230 unsigned long *pfns; member
255 p->pfns = vcalloc(slot->npages, sizeof(*p->pfns)); in kvmppc_uvmem_slot_init()
256 if (!p->pfns) { in kvmppc_uvmem_slot_init()
280 vfree(p->pfns); in kvmppc_uvmem_slot_free()
299 p->pfns[index] = uvmem_pfn | flag; in kvmppc_mark_gfn()
301 p->pfns[index] = flag; in kvmppc_mark_gfn()
342 if (p->pfns[index] & KVMPPC_GFN_UVMEM_PFN) { in kvmppc_gfn_is_uvmem_pfn()
344 *uvmem_pfn = p->pfns[index] & in kvmppc_gfn_is_uvmem_pfn()
382 if (!(p->pfns[index] & KVMPPC_GFN_FLAG_MASK)) { in kvmppc_next_nontransitioned_gfn()
/openbmc/linux/mm/
H A Dsparse.c203 unsigned long pfns; in subsection_map_init() local
205 pfns = min(nr_pages, PAGES_PER_SECTION in subsection_map_init()
208 subsection_mask_set(ms->usage->subsection_map, pfn, pfns); in subsection_map_init()
211 pfns, subsection_map_index(pfn), in subsection_map_init()
212 subsection_map_index(pfn + pfns - 1)); in subsection_map_init()
214 pfn += pfns; in subsection_map_init()
215 nr_pages -= pfns; in subsection_map_init()
/openbmc/linux/lib/
H A Dtest_hmm.c209 unsigned long *pfns = range->hmm_pfns; in dmirror_do_fault() local
214 pfn++, pfns++) { in dmirror_do_fault()
222 WARN_ON(*pfns & HMM_PFN_ERROR); in dmirror_do_fault()
223 WARN_ON(!(*pfns & HMM_PFN_VALID)); in dmirror_do_fault()
225 page = hmm_pfn_to_page(*pfns); in dmirror_do_fault()
229 if (*pfns & HMM_PFN_WRITE) in dmirror_do_fault()
332 unsigned long pfns[64]; in dmirror_fault() local
335 .hmm_pfns = pfns, in dmirror_fault()
349 range.end = min(addr + (ARRAY_SIZE(pfns) << PAGE_SHIFT), end); in dmirror_fault()
1172 unsigned long pfns[64]; in dmirror_snapshot() local
[all …]
/openbmc/linux/drivers/iommu/
H A Diova.c632 unsigned long pfns[IOVA_MAG_SIZE]; member
673 struct iova *iova = private_find_iova(iovad, mag->pfns[i]); in iova_magazine_free_pfns()
704 for (i = mag->size - 1; mag->pfns[i] > limit_pfn; i--) in iova_magazine_pop()
709 pfn = mag->pfns[i]; in iova_magazine_pop()
710 mag->pfns[i] = mag->pfns[--mag->size]; in iova_magazine_pop()
717 mag->pfns[mag->size++] = pfn; in iova_magazine_push()
/openbmc/qemu/include/hw/xen/
H A Dxen_backend_ops.h233 xen_pfn_t *pfns, int *errs);
240 size_t pages, xen_pfn_t *pfns, in qemu_xen_foreignmem_map() argument
246 return xen_foreignmem_ops->map(dom, addr, prot, pages, pfns, errs); in qemu_xen_foreignmem_map()
/openbmc/qemu/hw/xen/
H A Dxen-mapcache.c198 g_autofree xen_pfn_t *pfns = NULL; in xen_remap_bucket() local
208 pfns = g_new0(xen_pfn_t, nb_pfn); in xen_remap_bucket()
246 pfns[i] = (address_index << (mc->bucket_shift - XC_PAGE_SHIFT)) + i; in xen_remap_bucket()
278 nb_pfn, pfns, err); in xen_remap_bucket()
H A Dxen-operations.c194 size_t pages, xen_pfn_t *pfns, in libxenforeignmem_backend_map() argument
197 return xenforeignmemory_map2(xen_fmem, dom, addr, prot, 0, pages, pfns, in libxenforeignmem_backend_map()
/openbmc/linux/include/xen/
H A Dxen-ops.h189 int xen_xlate_map_ballooned_pages(xen_pfn_t **pfns, void **vaddr,
/openbmc/linux/arch/s390/include/asm/
H A Dgmap.h152 void s390_uv_destroy_pfns(unsigned long count, unsigned long *pfns);
/openbmc/linux/include/linux/
H A Dvmalloc.h166 void *vmap_pfn(unsigned long *pfns, unsigned int count, pgprot_t prot);
/openbmc/linux/arch/s390/mm/
H A Dgmap.c2812 unsigned long pfns[GATHER_GET_PAGES]; member
2824 p->pfns[p->count] = phys_to_pfn(pte_val(pte)); in s390_gather_pages()
2840 void s390_uv_destroy_pfns(unsigned long count, unsigned long *pfns) in s390_uv_destroy_pfns() argument
2846 uv_destroy_owned_page(pfn_to_phys(pfns[i])); in s390_uv_destroy_pfns()
2848 put_page(pfn_to_page(pfns[i])); in s390_uv_destroy_pfns()
2880 s390_uv_destroy_pfns(state.count, state.pfns); in __s390_uv_destroy_range()

12