Home
last modified time | relevance | path

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

12345

/linux-6.3-rc2/drivers/misc/ocxl/
A Dtrace.h45 __entry->pasid = pasid;
50 __entry->pasid,
65 __entry->pasid = pasid;
70 __entry->pasid,
90 __entry->pasid = pasid;
98 __entry->pasid,
124 __entry->pasid = pasid;
129 __entry->pasid,
185 __entry->pasid = pasid;
192 __entry->pasid,
[all …]
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()
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()
251 rc = ocxl_link_remove_pe(ctx->afu->fn->link, ctx->pasid); in ocxl_context_detach()
[all …]
A Dlink.c550 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()
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
675 if (pasid > SPA_PASID_MAX) in ocxl_link_remove_pe()
696 pe_handle = pasid & SPA_PE_MASK; in ocxl_link_remove_pe()
706 trace_ocxl_context_remove(current->pid, spa->spa_mem, pasid, in ocxl_link_remove_pe()
[all …]
/linux-6.3-rc2/drivers/gpu/drm/amd/amdkfd/
A Dcik_event_interrupt.c38 uint16_t pasid; in cik_event_interrupt_isr() local
58 tmp_ihre->ring_id |= pasid << 16; in cik_event_interrupt_isr()
60 return ret && (pasid != 0) && in cik_event_interrupt_isr()
72 pasid = (ihre->ring_id & 0xffff0000) >> 16; in cik_event_interrupt_isr()
95 u32 pasid = (ihre->ring_id & 0xffff0000) >> 16; in cik_event_interrupt_wq() local
97 if (pasid == 0) in cik_event_interrupt_wq()
107 kfd_signal_hw_exception_event(pasid); in cik_event_interrupt_wq()
112 kfd_smi_event_update_vmfault(dev, pasid); in cik_event_interrupt_wq()
113 kfd_dqm_evict_pasid(dev->dqm, pasid); in cik_event_interrupt_wq()
121 kfd_signal_vm_fault_event(dev, pasid, &info); in cik_event_interrupt_wq()
[all …]
A Dkfd_int_process_v9.c94 uint16_t pasid, uint16_t client_id) in event_interrupt_poison_consumption_v9() argument
114 ret = kfd_dqm_evict_pasid(dev->dqm, pasid); in event_interrupt_poison_consumption_v9()
126 kfd_signal_poison_consumed_event(dev, pasid); in event_interrupt_poison_consumption_v9()
168 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_isr_v9() local
211 pasid = dev->dqm->vmid_pasid[vmid]; in event_interrupt_isr_v9()
215 & ~pasid_mask) | pasid); in event_interrupt_isr_v9()
219 client_id, source_id, vmid, pasid); in event_interrupt_isr_v9()
259 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_wq_v9() local
328 kfd_signal_hw_exception_event(pasid); in event_interrupt_wq_v9()
363 kfd_smi_event_update_vmfault(dev, pasid); in event_interrupt_wq_v9()
[all …]
A Dkfd_int_process_v11.c191 uint16_t pasid, uint16_t source_id) in event_interrupt_poison_consumption_v11() argument
211 ret = dev->dqm->ops.reset_queues(dev->dqm, pasid); in event_interrupt_poison_consumption_v11()
218 kfd_signal_poison_consumed_event(dev, pasid); in event_interrupt_poison_consumption_v11()
233 uint16_t source_id, client_id, pasid, vmid; in event_interrupt_isr_v11() local
246 pasid = SOC15_PASID_FROM_IH_ENTRY(ih_ring_entry); in event_interrupt_isr_v11()
254 client_id, source_id, vmid, pasid); in event_interrupt_isr_v11()
280 uint16_t source_id, client_id, ring_id, pasid, vmid; in event_interrupt_wq_v11() local
289 pasid = SOC15_PASID_FROM_IH_ENTRY(ih_ring_entry); in event_interrupt_wq_v11()
318 kfd_smi_event_update_vmfault(dev, pasid); in event_interrupt_wq_v11()
326 kfd_signal_event_interrupt(pasid, context_id0, 32); in event_interrupt_wq_v11()
[all …]
A Dkfd_iommu.c124 err = amd_iommu_bind_pasid(dev->adev->pdev, p->pasid, p->lead_thread); in kfd_iommu_bind_process_to_device()
143 p->pasid); in kfd_iommu_unbind_process()
147 static void iommu_pasid_shutdown_callback(struct pci_dev *pdev, u32 pasid) in iommu_pasid_shutdown_callback() argument
161 p = kfd_lookup_process_by_pasid(pasid); in iommu_pasid_shutdown_callback()
165 pr_debug("Unbinding process 0x%x from IOMMU\n", pasid); in iommu_pasid_shutdown_callback()
182 static int iommu_invalid_ppr_cb(struct pci_dev *pdev, u32 pasid, in iommu_invalid_ppr_cb() argument
192 pasid, in iommu_invalid_ppr_cb()
198 kfd_signal_iommu_event(dev, pasid, address, in iommu_invalid_ppr_cb()
226 err = amd_iommu_bind_pasid(kfd->adev->pdev, p->pasid, in kfd_bind_processes_to_device()
230 p->pasid); in kfd_bind_processes_to_device()
/linux-6.3-rc2/drivers/iommu/intel/
A Dpasid.c45 *pasid = VCMD_VRSP_RESULT_PASID(res); in vcmd_alloc_pasid()
200 dir_index = pasid >> PASID_PDE_SHIFT; in intel_pasid_get_entry()
201 index = pasid & PASID_PTE_MASK; in intel_pasid_get_entry()
416 u16 did, u32 pasid) in pasid_cache_invalidation_with_pasid() argument
421 QI_PC_PASID(pasid) | QI_PC_TYPE; in pasid_cache_invalidation_with_pasid()
450 if (pasid == PASID_RID2PASID) in devtlb_invalidation_with_pasid()
457 u32 pasid, bool fault_ignore) in intel_pasid_tear_down_entry() argument
495 u32 pasid, u16 did) in pasid_flush_caches() argument
514 u32 pasid, u16 did, int flags) in intel_pasid_setup_first_level() argument
613 struct device *dev, u32 pasid) in intel_pasid_setup_second_level() argument
[all …]
A Dsvm.c37 XA_LIMIT(pasid, pasid), GFP_ATOMIC); in pasid_private_add()
191 svm->pasid, sdev->qdep); in __flush_svm_range_dev()
253 svm->pasid, true); in intel_mm_release()
276 if (pasid == INVALID_IOASID || pasid >= PASID_MAX) in pasid_to_svm_sdev()
279 svm = pasid_private_find(pasid); in pasid_to_svm_sdev()
316 svm->pasid = mm->pasid; in intel_svm_bind_mm()
368 pasid_private_remove(mm->pasid); in intel_svm_bind_mm()
435 u64 pasid:20; member
515 if (!req->pasid_present || req->pasid != pasid) { in intel_svm_drain_prq()
592 event.fault.prm.pasid = desc->pasid; in intel_svm_prq_report()
[all …]
A Dpasid.h114 u32 pasid, u16 did, int flags);
117 struct device *dev, u32 pasid);
120 struct device *dev, u32 pasid);
122 struct device *dev, u32 pasid,
124 int vcmd_alloc_pasid(struct intel_iommu *iommu, u32 *pasid);
125 void vcmd_free_pasid(struct intel_iommu *iommu, u32 pasid);
127 struct device *dev, u32 pasid);
/linux-6.3-rc2/drivers/iommu/
A Diommu-sva.c29 ioasid_t pasid; in iommu_sva_alloc_pasid() local
37 if (pasid_valid(mm->pasid)) { in iommu_sva_alloc_pasid()
38 if (mm->pasid < min || mm->pasid >= max) in iommu_sva_alloc_pasid()
43 pasid = ioasid_alloc(&iommu_sva_pasid, min, max, mm); in iommu_sva_alloc_pasid()
44 if (!pasid_valid(pasid)) in iommu_sva_alloc_pasid()
47 mm_pasid_set(mm, pasid); in iommu_sva_alloc_pasid()
68 struct mm_struct *iommu_sva_find(ioasid_t pasid) in iommu_sva_find() argument
112 domain = iommu_get_domain_for_dev_pasid(dev, mm->pasid, in iommu_sva_bind_device()
163 ioasid_t pasid = domain->mm->pasid; in iommu_sva_unbind_device() local
168 iommu_detach_device_pasid(domain, dev, pasid); in iommu_sva_unbind_device()
[all …]
/linux-6.3-rc2/drivers/pci/
A Dats.c364 int pasid = pdev->pasid_cap; in pci_enable_pasid() local
382 if (!pasid) in pci_enable_pasid()
413 int pasid = pdev->pasid_cap; in pci_disable_pasid() local
422 if (!pasid) in pci_disable_pasid()
446 if (!pasid) in pci_restore_pasid_state()
466 int pasid; in pci_pasid_features() local
471 pasid = pdev->pasid_cap; in pci_pasid_features()
472 if (!pasid) in pci_pasid_features()
495 int pasid; in pci_max_pasids() local
500 pasid = pdev->pasid_cap; in pci_max_pasids()
[all …]
/linux-6.3-rc2/drivers/iommu/amd/
A Diommu_v2.c44 u32 pasid; /* PASID index */ member
73 u32 pasid; member
152 u32 pasid, bool alloc) in __get_pasid_state_ptr() argument
186 u32 pasid) in set_pasid_state() argument
231 u32 pasid) in get_pasid_state() argument
435 fault->pasid, in handle_fault_error()
574 fault->pasid = iommu_fault->pasid; in ppr_notifier()
619 if (pasid >= dev_state->max_pasids) in amd_iommu_bind_pasid()
635 pasid_state->pasid = pasid; in amd_iommu_bind_pasid()
669 clear_pasid_state(dev_state, pasid); in amd_iommu_bind_pasid()
[all …]
A Damd_iommu.h55 extern int amd_iommu_flush_page(struct iommu_domain *dom, u32 pasid,
61 extern int amd_iommu_flush_tlb(struct iommu_domain *dom, u32 pasid);
62 extern int amd_iommu_domain_set_gcr3(struct iommu_domain *dom, u32 pasid,
64 extern int amd_iommu_domain_clear_gcr3(struct iommu_domain *dom, u32 pasid);
79 extern int amd_iommu_complete_ppr(struct pci_dev *pdev, u32 pasid,
/linux-6.3-rc2/drivers/gpu/drm/amd/amdgpu/
A Damdgpu_ids.c46 u32 pasid; member
62 int pasid = -EINVAL; in amdgpu_pasid_alloc() local
68 if (pasid != -ENOSPC) in amdgpu_pasid_alloc()
72 if (pasid >= 0) in amdgpu_pasid_alloc()
75 return pasid; in amdgpu_pasid_alloc()
108 u32 pasid) in amdgpu_pasid_free_delayed() argument
119 amdgpu_pasid_free(pasid); in amdgpu_pasid_free_delayed()
128 amdgpu_pasid_free(pasid); in amdgpu_pasid_free_delayed()
130 cb->pasid = pasid; in amdgpu_pasid_free_delayed()
144 amdgpu_pasid_free(pasid); in amdgpu_pasid_free_delayed()
[all …]
A Damdgpu_mes.c309 r = idr_alloc(&adev->mes.pasid_idr, process, pasid, pasid + 1, in amdgpu_mes_create_process()
327 process->pasid = pasid; in amdgpu_mes_create_process()
528 int r, pasid; in amdgpu_mes_suspend() local
543 pasid, gang->gang_id); in amdgpu_mes_suspend()
557 int r, pasid; in amdgpu_mes_resume() local
990 int r, queue_id, pasid; in amdgpu_mes_add_ring() local
1003 pasid = gang->process->pasid; in amdgpu_mes_add_ring()
1337 int i, r, pasid, k = 0; in amdgpu_mes_self_test() local
1340 if (pasid < 0) { in amdgpu_mes_self_test()
1342 pasid = 0; in amdgpu_mes_self_test()
[all …]
A Damdgpu_trace.h88 __field(unsigned, pasid)
100 __entry->pasid = iv->pasid;
223 __field(u32, pasid)
233 __entry->pasid = vm->pasid;
439 TP_PROTO(unsigned pasid),
440 TP_ARGS(pasid),
445 __entry->pasid = pasid;
451 TP_PROTO(unsigned pasid),
452 TP_ARGS(pasid)
456 TP_PROTO(unsigned pasid),
[all …]
A Damdgpu_gmc.h118 int (*flush_gpu_tlb_pasid)(struct amdgpu_device *adev, uint16_t pasid,
125 unsigned pasid);
296 #define amdgpu_gmc_flush_gpu_tlb_pasid(adev, pasid, type, allhub) \ argument
298 ((adev), (pasid), (type), (allhub)))
300 …e amdgpu_gmc_emit_pasid_mapping(r, vmid, pasid) (r)->adev->gmc.gmc_funcs->emit_pasid_mapping((r), … argument
351 uint16_t pasid, uint64_t timestamp);
353 uint16_t pasid);
A Damdgpu_ids.h61 unsigned pasid; member
75 void amdgpu_pasid_free(u32 pasid);
77 u32 pasid);
/linux-6.3-rc2/include/linux/sched/
A Dmm.h457 mm->pasid = INVALID_IOASID; in mm_pasid_init()
461 static inline void mm_pasid_set(struct mm_struct *mm, u32 pasid) in mm_pasid_set() argument
463 mm->pasid = pasid; in mm_pasid_set()
468 if (pasid_valid(mm->pasid)) { in mm_pasid_drop()
469 ioasid_free(mm->pasid); in mm_pasid_drop()
470 mm->pasid = INVALID_IOASID; in mm_pasid_drop()
475 static inline void mm_pasid_set(struct mm_struct *mm, u32 pasid) {} in mm_pasid_set() argument
/linux-6.3-rc2/arch/csky/include/asm/
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-6.3-rc2/arch/csky/mm/
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-6.3-rc2/include/linux/
A Damd-iommu.h63 extern int amd_iommu_bind_pasid(struct pci_dev *pdev, u32 pasid,
75 extern void amd_iommu_unbind_pasid(struct pci_dev *pdev, u32 pasid);
101 u32 pasid,
153 typedef void (*amd_iommu_invalidate_ctx)(struct pci_dev *pdev, u32 pasid);
/linux-6.3-rc2/include/uapi/linux/
A Diommu.h75 __u32 pasid; member
100 __u32 pasid; member
156 __u32 pasid; member
/linux-6.3-rc2/drivers/dma/idxd/
A Dcdev.c36 unsigned int pasid; member
79 unsigned int pasid; in idxd_cdev_open() local
109 pasid = iommu_sva_get_pasid(sva); in idxd_cdev_open()
110 if (pasid == IOMMU_PASID_INVALID) { in idxd_cdev_open()
117 ctx->pasid = pasid; in idxd_cdev_open()
120 rc = idxd_wq_set_pasid(wq, pasid); in idxd_cdev_open()
152 idxd_device_drain_pasid(idxd, ctx->pasid); in idxd_cdev_release()

Completed in 42 milliseconds

12345