Home
last modified time | relevance | path

Searched refs:pasid (Results 1 – 25 of 79) sorted by relevance

1234

/linux/drivers/misc/ocxl/
H A Dtrace.h36 TP_PROTO(int pasid, unsigned long pidr),
37 TP_ARGS(pasid, pidr),
40 __field(int, pasid)
45 __entry->pasid = pasid;
50 __entry->pasid,
56 TP_PROTO(int pasid, unsigned long pidr),
57 TP_ARGS(pasid, pidr),
60 __field(int, pasid)
65 __entry->pasid = pasid;
70 __entry->pasid,
[all …]
H A Dcontext.c10 int pasid; in ocxl_context_alloc() local
19 pasid = idr_alloc(&afu->contexts_idr, ctx, afu->pasid_base, in ocxl_context_alloc()
21 if (pasid < 0) { in ocxl_context_alloc()
24 return pasid; in ocxl_context_alloc()
29 ctx->pasid = pasid; in ocxl_context_alloc()
86 rc = ocxl_link_add_pe(ctx->afu->fn->link, ctx->pasid, pidr, ctx->tidr, in ocxl_context_attach()
129 pasid_off = ctx->pasid - ctx->afu->pasid_base; in map_pp_mmio()
148 ctx->pasid, vmf->address, offset); in ocxl_mmap_fault()
231 rc = ocxl_config_terminate_pasid(dev, afu_control_pos, ctx->pasid); in ocxl_context_detach()
233 trace_ocxl_terminate_pasid(ctx->pasid, rc); in ocxl_context_detach()
[all …]
H A Dlink.c538 int ocxl_link_add_pe(void *link_handle, int pasid, u32 pidr, u32 tidr, in ocxl_link_add_pe() argument
550 if (pasid > SPA_PASID_MAX) in ocxl_link_add_pe()
554 pe_handle = pasid & SPA_PE_MASK; in ocxl_link_add_pe()
576 pe->pasid = cpu_to_be32(pasid << (31 - 19)); in ocxl_link_add_pe()
595 trace_ocxl_init_mmu_notifier(pasid, mm->context.id); in ocxl_link_add_pe()
624 trace_ocxl_context_add(current->pid, spa->spa_mem, pasid, pidr, tidr); in ocxl_link_add_pe()
631 int ocxl_link_update_pe(void *link_handle, int pasid, __u16 tid) in ocxl_link_update_pe() argument
638 if (pasid > SPA_PASID_MAX) in ocxl_link_update_pe()
641 pe_handle = pasid & SPA_PE_MASK; in ocxl_link_update_pe()
667 int ocxl_link_remove_pe(void *link_handle, int pasid) in ocxl_link_remove_pe() argument
[all …]
H A Docxl_internal.h72 int pasid; member
87 __be32 pasid; member
139 int ocxl_link_update_pe(void *link_handle, int pasid, __u16 tid);
H A Dfile.c77 pr_debug("%s for context %d\n", __func__, ctx->pasid); in afu_ioctl_attach()
101 arg.pasid = ctx->pasid; in afu_ioctl_get_metadata()
138 ctx->pasid, ctx->tidr); in afu_ioctl_enable_p9_wait()
209 pr_debug("%s for context %d, command %s\n", __func__, ctx->pasid, in afu_ioctl()
296 pr_debug("%s for context %d\n", __func__, ctx->pasid); in afu_mmap()
329 pr_debug("%s for context %d\n", __func__, ctx->pasid); in afu_poll()
/linux/drivers/iommu/iommufd/
H A Ddevice.c419 ioasid_t pasid) in iommufd_group_device_num() argument
428 attach = xa_load(&igroup->pasid_attach, pasid); in iommufd_group_device_num()
472 iommufd_group_first_attach(struct iommufd_group *igroup, ioasid_t pasid) in iommufd_group_first_attach() argument
475 return !xa_load(&igroup->pasid_attach, pasid); in iommufd_group_first_attach()
507 ioasid_t pasid) in iommufd_device_is_attached() argument
511 attach = xa_load(&idev->igroup->pasid_attach, pasid); in iommufd_device_is_attached()
517 ioasid_t pasid) in iommufd_hwpt_pasid_compat() argument
523 if (pasid == IOMMU_NO_PASID) { in iommufd_hwpt_pasid_compat()
565 ioasid_t pasid) in iommufd_hwpt_attach_device() argument
573 rc = iommufd_hwpt_pasid_compat(hwpt, idev, pasid); in iommufd_hwpt_attach_device()
[all …]
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_vm_tlb_fence.c37 uint16_t pasid; member
62 r = amdgpu_gmc_flush_gpu_tlb_pasid(f->adev, f->pasid, 2, true, 0); in amdgpu_tlb_fence_work()
65 f->pasid); in amdgpu_tlb_fence_work()
92 amdgpu_gmc_flush_gpu_tlb_pasid(adev, vm->pasid, 2, true, 0); in amdgpu_vm_tlb_fence_create()
99 f->pasid = vm->pasid; in amdgpu_vm_tlb_fence_create()
H A Dgmc_v12_1.c157 ret = amdgpu_vm_handle_fault(adev, entry->pasid, entry->vmid, node_id, in gmc_v12_1_process_interrupt()
165 amdgpu_gmc_filter_faults(adev, entry->ih, addr, entry->pasid, in gmc_v12_1_process_interrupt()
180 if (amdgpu_vm_handle_fault(adev, entry->pasid, entry->vmid, node_id, in gmc_v12_1_process_interrupt()
195 entry->src_id, entry->ring_id, entry->vmid, entry->pasid); in gmc_v12_1_process_interrupt()
197 task_info = amdgpu_vm_get_task_info_pasid(adev, entry->pasid); in gmc_v12_1_process_interrupt()
238 amdgpu_vm_update_fault_cache(adev, entry->pasid, addr, status, vmhub); in gmc_v12_1_process_interrupt()
408 uint16_t pasid, uint32_t flush_type, in gmc_v12_1_flush_gpu_tlb_pasid() argument
418 input.pasid = pasid; in gmc_v12_1_flush_gpu_tlb_pasid()
447 if (!valid || queried != pasid) in gmc_v12_1_flush_gpu_tlb_pasid()
502 unsigned vmid, unsigned pasid) in gmc_v12_1_emit_pasid_mapping() argument
[all …]
/linux/drivers/dma/idxd/
H A Dcdev.c44 unsigned int pasid; member
54 static void idxd_cdev_evl_drain_pasid(struct idxd_wq *wq, u32 pasid);
129 idxd_device_drain_pasid(idxd, ctx->pasid); in idxd_file_dev_release()
142 idxd_cdev_evl_drain_pasid(wq, ctx->pasid); in idxd_file_dev_release()
190 ptr = xa_cmpxchg(&wq->upasid_xa, ctx->pasid, ctx, NULL, GFP_KERNEL); in idxd_xa_pasid_remove()
193 ctx->pasid); in idxd_xa_pasid_remove()
197 void idxd_user_counter_increment(struct idxd_wq *wq, u32 pasid, int index) in idxd_user_counter_increment() argument
205 ctx = xa_load(&wq->upasid_xa, pasid); in idxd_user_counter_increment()
222 unsigned int pasid; in idxd_cdev_open() local
254 pasid = iommu_sva_get_pasid(sva); in idxd_cdev_open()
[all …]
H A Ddevice.c320 static void __idxd_wq_set_pasid_locked(struct idxd_wq *wq, int pasid) in __idxd_wq_set_pasid_locked() argument
330 wqcfg.pasid = pasid; in __idxd_wq_set_pasid_locked()
336 int idxd_wq_set_pasid(struct idxd_wq *wq, int pasid) in idxd_wq_set_pasid() argument
344 __idxd_wq_set_pasid_locked(wq, pasid); in idxd_wq_set_pasid()
368 wqcfg.pasid = 0; in idxd_wq_disable_pasid()
601 void idxd_device_drain_pasid(struct idxd_device *idxd, int pasid) in idxd_device_drain_pasid() argument
606 operand = pasid; in idxd_device_drain_pasid()
609 dev_dbg(dev, "pasid %d drained\n", pasid); in idxd_device_drain_pasid()
1313 if (ie->pasid == IOMMU_PASID_INVALID) in idxd_device_set_perm_entry()
1317 mperm.pasid = ie->pasid; in idxd_device_set_perm_entry()
[all …]
H A Dirq.c85 if (ie->pasid != IOMMU_PASID_INVALID) in idxd_int_handle_revoke_drain()
86 desc.pasid = ie->pasid; in idxd_int_handle_revoke_drain()
243 idxd_user_counter_increment(wq, entry_head->pasid, COUNTER_FAULTS); in idxd_evl_fault_work()
255 idxd_user_counter_increment(wq, entry_head->pasid, COUNTER_FAULTS); in idxd_evl_fault_work()
273 copied = idxd_copy_cr(wq, entry_head->pasid, entry_head->fault_addr, in idxd_evl_fault_work()
287 idxd_user_counter_increment(wq, entry_head->pasid, COUNTER_FAULT_FAILS); in idxd_evl_fault_work()
296 idxd_user_counter_increment(wq, entry_head->pasid, COUNTER_FAULT_FAILS); in idxd_evl_fault_work()
/linux/arch/csky/include/asm/
H A Dasid.h33 void asid_new_context(struct asid_info *info, atomic64_t *pasid,
43 atomic64_t *pasid, unsigned int cpu, in asid_check_context() argument
48 asid = atomic64_read(pasid); in asid_check_context()
71 asid_new_context(info, pasid, cpu, mm); in asid_check_context()
/linux/arch/csky/mm/
H A Dasid.c79 static u64 new_context(struct asid_info *info, atomic64_t *pasid, in new_context() argument
83 u64 asid = atomic64_read(pasid); in new_context()
137 void asid_new_context(struct asid_info *info, atomic64_t *pasid, in asid_new_context() argument
145 asid = atomic64_read(pasid); in asid_new_context()
147 asid = new_context(info, pasid, mm); in asid_new_context()
148 atomic64_set(pasid, asid); in asid_new_context()
/linux/drivers/iommu/intel/
H A Dnested.c136 struct device *dev, ioasid_t pasid, in domain_setup_nested() argument
140 intel_pasid_tear_down_entry(iommu, dev, pasid, false); in domain_setup_nested()
142 return intel_pasid_setup_nested(iommu, dev, pasid, domain); in domain_setup_nested()
146 struct device *dev, ioasid_t pasid, in intel_nested_set_dev_pasid() argument
165 dev_pasid = domain_add_dev_pasid(domain, dev, pasid); in intel_nested_set_dev_pasid()
173 ret = domain_setup_nested(iommu, dmar_domain, dev, pasid, old); in intel_nested_set_dev_pasid()
177 domain_remove_dev_pasid(old, dev, pasid); in intel_nested_set_dev_pasid()
184 domain_remove_dev_pasid(domain, dev, pasid); in intel_nested_set_dev_pasid()
H A Dsvm.c93 dev_pasid->pasid, true); in intel_mm_release()
149 struct device *dev, ioasid_t pasid, in intel_svm_set_dev_pasid() argument
163 dev_pasid = domain_add_dev_pasid(domain, dev, pasid); in intel_svm_set_dev_pasid()
174 ret = __domain_setup_first_level(iommu, dev, pasid, in intel_svm_set_dev_pasid()
180 domain_remove_dev_pasid(old, dev, pasid); in intel_svm_set_dev_pasid()
186 domain_remove_dev_pasid(domain, dev, pasid); in intel_svm_set_dev_pasid()
H A Dpasid.h307 phys_addr_t fsptptr, u32 pasid, u16 did,
311 struct device *dev, u32 pasid);
313 struct device *dev, u32 pasid,
316 struct device *dev, u32 pasid);
318 u32 pasid, struct dmar_domain *domain);
320 struct device *dev, u32 pasid,
323 struct device *dev, u32 pasid);
/linux/tools/testing/selftests/iommu/
H A Diommufd_utils.h927 static int _test_cmd_trigger_iopf(int fd, __u32 device_id, __u32 pasid, in _test_cmd_trigger_iopf() argument
935 .pasid = pasid, in _test_cmd_trigger_iopf()
967 #define test_cmd_trigger_iopf_pasid(device_id, pasid, fault_fd) \ argument
969 pasid, fault_fd))
1175 static int _test_cmd_pasid_attach(int fd, __u32 stdev_id, __u32 pasid, in _test_cmd_pasid_attach()
1183 .pasid = pasid, in _test_cmd_pasid_attach()
1192 #define test_cmd_pasid_attach(pasid, hwpt_id) \
1194 pasid, hwpt_i
1174 _test_cmd_pasid_attach(int fd,__u32 stdev_id,__u32 pasid,__u32 pt_id) _test_cmd_pasid_attach() argument
1191 test_cmd_pasid_attach(pasid,hwpt_id) global() argument
1195 test_err_pasid_attach(_errno,pasid,hwpt_id) global() argument
1200 _test_cmd_pasid_replace(int fd,__u32 stdev_id,__u32 pasid,__u32 pt_id) _test_cmd_pasid_replace() argument
1217 test_cmd_pasid_replace(pasid,hwpt_id) global() argument
1221 test_err_pasid_replace(_errno,pasid,hwpt_id) global() argument
1226 _test_cmd_pasid_detach(int fd,__u32 stdev_id,__u32 pasid) _test_cmd_pasid_detach() argument
1241 test_cmd_pasid_detach(pasid) global() argument
1244 test_cmd_pasid_check_hwpt(int fd,__u32 stdev_id,__u32 pasid,__u32 hwpt_id) test_cmd_pasid_check_hwpt() argument
[all...]
H A Diommufd_fail_nth.c213 uint32_t pasid; in FIXTURE() local
221 self->pasid = 0; //test should use a non-zero value in FIXTURE_SETUP()
233 if (self->pasid && self->stdev_id) in FIXTURE_TEARDOWN()
234 _test_cmd_pasid_detach(self->fd, self->stdev_id, self->pasid); in FIXTURE_TEARDOWN()
726 /* Tests for pasid attach/replace/detach */ in TEST_FAIL_NTH()
728 self->pasid = 200; in TEST_FAIL_NTH()
731 self->pasid, hwpt_id)) { in TEST_FAIL_NTH()
732 self->pasid = 0; in TEST_FAIL_NTH()
737 self->pasid, test_hwpt_id)) in TEST_FAIL_NTH()
740 if (_test_cmd_pasid_detach(self->fd, self->stdev_id, self->pasid)) in TEST_FAIL_NTH()
[all...]
H A Diommufd.c2295 uint32_t stddev_id, ioas_id, hwpt_id, pasid = 100; in TEST_F()
2303 ASSERT_EQ(0, _test_cmd_pasid_attach(self->fd, stddev_id, pasid, hwpt_id)); in TEST_F()
2306 ASSERT_EQ(0, _test_cmd_pasid_detach(self->fd, stddev_id, pasid)); in TEST_F()
2314 EXPECT_ERRNO(EINVAL, _test_cmd_pasid_attach(self->fd, stddev_id, pasid, hwpt_id)); in TEST_F()
3367 uint32_t pasid = 100; in TEST_F()
3371 * Negative, detach pasid without attaching, this is not expected. in TEST_F()
3374 test_cmd_pasid_detach(pasid); in TEST_F()
3412 /* Attach RID to non-pasid compat domain, */ in TEST_F()
3414 /* then attach to pasid should fail */ in TEST_F()
3415 test_err_pasid_attach(EINVAL, pasid, s2_hwpt_i in TEST_F()
3293 uint32_t pasid = 100; TEST_F() local
[all...]
/linux/Documentation/ABI/testing/
H A Dsysfs-driver-uio_pci_sva-pasid1 What: /sys/bus/pci/drivers/uio_pci_sva/<pci_dev>/pasid
26 f = fopen("/sys/.../pasid", "r");
27 fscanf(f, "%d", &pasid);
29 map[REG_PASID_OFFSET] = pasid;
/linux/drivers/iommu/
H A Dio-pgfault.c126 fault->prm.pasid, 0); in find_fault_handler()
163 .pasid = fault->prm.pasid, in iopf_error_response()
269 fault->prm.pasid); in iommu_report_device_fault()
330 .pasid = iopf->fault.prm.pasid, in iopf_group_response()
488 .pasid = iopf->fault.prm.pasid, in iopf_queue_remove_device()
/linux/drivers/uio/
H A Duio_pci_generic_sva.c18 int pasid; member
43 udev->pasid = iommu_sva_get_pasid(handle); in uio_pci_sva_open()
157 return sysfs_emit(buf, "%d\n", udev->pasid); in pasid_show()
159 static DEVICE_ATTR_RO(pasid);
/linux/drivers/iommu/amd/
H A Diommu.c95 static int __amd_iommu_complete_ppr(struct device *dev, u32 pasid,
916 u32 pasid = PPR_PASID(*((u64 *)event)); in amd_iommu_report_ppr_err() local
923 PCI_FUNC(devid), pasid, address, flags, tag); in amd_iommu_report_ppr_err()
941 __amd_iommu_complete_ppr(&pdev->dev, pasid, IOMMU_PAGE_RESP_FAILURE, tag, gn); in amd_iommu_report_ppr_err()
952 u32 pasid; in iommu_print_event() local
957 pasid = (event[0] & EVENT_DOMID_MASK_HI) | in iommu_print_event()
974 amd_iommu_report_page_fault(iommu, devid, pasid, address, flags); in iommu_print_event()
982 pasid, address, flags); in iommu_print_event()
995 pasid, address, flags); in iommu_print_event()
1013 pasid, address, flags); in iommu_print_event()
[all …]
/linux/include/misc/
H A Docxl.h412 int afu_control_offset, int pasid);
449 int ocxl_link_add_pe(void *link_handle, int pasid, u32 pidr, u32 tidr,
457 int ocxl_link_remove_pe(void *link_handle, int pasid);
/linux/drivers/crypto/hisilicon/
H A Dqm_common.h34 __le16 pasid; member
49 __le16 pasid; member

1234