| /linux-6.15/drivers/gpu/drm/nouveau/nvkm/subdev/fault/ |
| H A D | base.c | 29 struct nvkm_fault *fault = container_of(event, typeof(*fault), event); in nvkm_fault_ntfy_fini() local 30 fault->func->buffer.intr(fault->buffer[index], false); in nvkm_fault_ntfy_fini() 36 struct nvkm_fault *fault = container_of(event, typeof(*fault), event); in nvkm_fault_ntfy_init() local 37 fault->func->buffer.intr(fault->buffer[index], true); in nvkm_fault_ntfy_init() 50 return fault->func->intr(fault); in nvkm_fault_intr() 58 fault->func->fini(fault); in nvkm_fault_fini() 67 fault->func->init(fault); in nvkm_fault_init() 81 buffer->fault = fault; in nvkm_fault_oneinit_buffer() 122 ret = fault->func->oneinit(fault); in nvkm_fault_oneinit() 142 return fault; in nvkm_fault_dtor() [all …]
|
| H A D | gv100.c | 33 struct nvkm_fault *fault = container_of(work, typeof(*fault), nrpfb_work); in gv100_fault_buffer_process() local 122 struct nvkm_fault *fault = container_of(ntfy, typeof(*fault), nrpfb); in gv100_fault_ntfy_nrpfb() local 124 schedule_work(&fault->nrpfb_work); in gv100_fault_ntfy_nrpfb() 162 gv100_fault_intr_fault(fault); in gv100_fault_intr() 168 if (fault->buffer[0]) { in gv100_fault_intr() 175 if (fault->buffer[1]) { in gv100_fault_intr() 189 nvkm_event_ntfy_block(&fault->nrpfb); in gv100_fault_fini() 190 flush_work(&fault->nrpfb_work); in gv100_fault_fini() 192 if (fault->buffer[0]) in gv100_fault_fini() 193 fault->func->buffer.fini(fault->buffer[0]); in gv100_fault_fini() [all …]
|
| H A D | tu102.c | 88 struct nvkm_fault *fault = container_of(inth, typeof(*fault), info_fault); in tu102_fault_info_fault() local 118 nvkm_event_ntfy_block(&fault->nrpfb); in tu102_fault_fini() 119 flush_work(&fault->nrpfb_work); in tu102_fault_fini() 121 if (fault->buffer[0]) in tu102_fault_fini() 122 fault->func->buffer.fini(fault->buffer[0]); in tu102_fault_fini() 124 nvkm_inth_block(&fault->info_fault); in tu102_fault_fini() 130 nvkm_inth_allow(&fault->info_fault); in tu102_fault_init() 132 fault->func->buffer.init(fault->buffer[0]); in tu102_fault_init() 133 nvkm_event_ntfy_allow(&fault->nrpfb); in tu102_fault_init() 145 &fault->info_fault); in tu102_fault_oneinit() [all …]
|
| H A D | Kbuild | 2 nvkm-y += nvkm/subdev/fault/base.o 3 nvkm-y += nvkm/subdev/fault/user.o 4 nvkm-y += nvkm/subdev/fault/gp100.o 5 nvkm-y += nvkm/subdev/fault/gp10b.o 6 nvkm-y += nvkm/subdev/fault/gv100.o 7 nvkm-y += nvkm/subdev/fault/tu102.o
|
| H A D | user.c | 42 return nvkm_uevent_add(uevent, &buffer->fault->event, buffer->id, in nvkm_ufault_uevent() 51 struct nvkm_device *device = buffer->fault->subdev.device; in nvkm_ufault_map() 62 buffer->fault->func->buffer.fini(buffer); in nvkm_ufault_fini() 70 buffer->fault->func->buffer.init(buffer); in nvkm_ufault_init() 96 struct nvkm_fault *fault = device->fault; in nvkm_ufault_new() local 97 struct nvkm_fault_buffer *buffer = fault->buffer[fault->func->user.rp]; in nvkm_ufault_new()
|
| /linux-6.15/drivers/infiniband/hw/hfi1/ |
| H A D | fault.c | 69 if (!ibd->fault->n_rxfaults[i] && !ibd->fault->n_txfaults[i]) in _fault_stats_seq_show() 96 struct fault *fault = file->private_data; in fault_opcodes_write() local 138 bitmap_zero(fault->opcodes, sizeof(fault->opcodes) * in fault_opcodes_write() 170 struct fault *fault = file->private_data; in fault_opcodes_read() local 210 if (ibd->fault) in hfi1_fault_exit_debugfs() 221 ibd->fault = kzalloc(sizeof(*ibd->fault), GFP_KERNEL); in hfi1_fault_init_debugfs() 222 if (!ibd->fault) in hfi1_fault_init_debugfs() 268 if (ibd->fault) in hfi1_dbg_fault_suppress_err() 278 if (!ibd->fault || !ibd->fault->enable) in __hfi1_should_fault() 293 if (ibd->fault->fault_skip && ibd->fault->skip) { in __hfi1_should_fault() [all …]
|
| /linux-6.15/drivers/iommu/iommufd/ |
| H A D | eventq.c | 68 struct iommufd_fault *fault = hwpt->fault; in iommufd_auto_response_faults() local 73 if (!fault) in iommufd_auto_response_faults() 77 mutex_lock(&fault->mutex); in iommufd_auto_response_faults() 99 mutex_unlock(&fault->mutex); in iommufd_auto_response_faults() 186 mutex_lock(&fault->mutex); in iommufd_fault_fops_read() 234 mutex_lock(&fault->mutex); in iommufd_fault_fops_write() 476 fault = __iommufd_object_alloc(ucmd->ictx, fault, IOMMUFD_OBJ_FAULT, in iommufd_fault_alloc() 478 if (IS_ERR(fault)) in iommufd_fault_alloc() 479 return PTR_ERR(fault); in iommufd_fault_alloc() 482 mutex_init(&fault->mutex); in iommufd_fault_alloc() [all …]
|
| /linux-6.15/drivers/gpu/drm/ci/xfails/ |
| H A D | msm-sm8350-hdk-skips.txt | 23 # [ 200.895243] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=PERMISS… 24 # [ 200.906885] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… 25 # [ 200.917625] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… 26 # [ 200.928353] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… 27 # [ 200.939084] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… 28 # [ 200.949815] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… 30 # [ 200.960467] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… 31 # [ 200.960500] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… 32 # [ 200.995966] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… 33 # [ 201.006702] *** gpu fault: ttbr0=00000001160d6000 iova=0001000000001000 dir=WRITE type=UNKNOWN… [all …]
|
| /linux-6.15/arch/x86/kvm/mmu/ |
| H A D | paging_tmpl.h | 92 struct x86_exception fault; member 516 walker->fault.address = addr; in FNAME() 621 gfn_t base_gfn = fault->gfn; in FNAME() 700 if (fault->write && table_gfn == fault->gfn) in FNAME() 743 base_gfn, fault->pfn, fault); in FNAME() 770 WARN_ON_ONCE(fault->is_tdp); in FNAME() 784 if (!fault->prefetch) in FNAME() 790 fault->gfn = walker.gfn; in FNAME() 792 fault->slot = kvm_vcpu_gfn_to_memslot(vcpu, fault->gfn); in FNAME() 812 !is_cr0_wp(vcpu->arch.mmu) && !fault->user && fault->slot) { in FNAME() [all …]
|
| H A D | mmu_internal.h | 339 struct kvm_page_fault *fault) in kvm_mmu_prepare_memory_fault_exit() argument 342 PAGE_SIZE, fault->write, fault->exec, in kvm_mmu_prepare_memory_fault_exit() 343 fault->is_private); in kvm_mmu_prepare_memory_fault_exit() 350 struct kvm_page_fault fault = { in kvm_mmu_do_page_fault() local 378 fault.gfn = gpa_to_gfn(fault.addr) & ~kvm_gfn_direct_bits(vcpu->kvm); in kvm_mmu_do_page_fault() 379 fault.slot = kvm_vcpu_gfn_to_memslot(vcpu, fault.gfn); in kvm_mmu_do_page_fault() 387 r = kvm_tdp_page_fault(vcpu, &fault); in kvm_mmu_do_page_fault() 389 r = vcpu->arch.mmu->page_fault(vcpu, &fault); in kvm_mmu_do_page_fault() 396 if (r == RET_PF_EMULATE && fault.is_private) { in kvm_mmu_do_page_fault() 398 kvm_mmu_prepare_memory_fault_exit(vcpu, &fault); in kvm_mmu_do_page_fault() [all …]
|
| /linux-6.15/arch/mips/kernel/ |
| H A D | unaligned.c | 175 goto fault; in emulate_load_store_insn() 184 goto fault; in emulate_load_store_insn() 299 goto fault; in emulate_load_store_insn() 314 goto fault; in emulate_load_store_insn() 329 goto fault; in emulate_load_store_insn() 348 goto fault; in emulate_load_store_insn() 371 goto fault; in emulate_load_store_insn() 584 fault: in emulate_load_store_insn() 656 goto fault; in emulate_load_store_microMIPS() 1211 fault: in emulate_load_store_microMIPS() [all …]
|
| /linux-6.15/arch/nios2/kernel/ |
| H A D | misaligned.c | 72 unsigned int fault; in handle_unaligned_c() local 85 fault = 0; in handle_unaligned_c() 98 fault |= __get_user(d0, (u8 *)(addr+0)); in handle_unaligned_c() 99 fault |= __get_user(d1, (u8 *)(addr+1)); in handle_unaligned_c() 116 fault |= __get_user(d0, (u8 *)(addr+0)); in handle_unaligned_c() 117 fault |= __get_user(d1, (u8 *)(addr+1)); in handle_unaligned_c() 140 fault |= __get_user(d0, (u8 *)(addr+0)); in handle_unaligned_c() 141 fault |= __get_user(d1, (u8 *)(addr+1)); in handle_unaligned_c() 142 fault |= __get_user(d2, (u8 *)(addr+2)); in handle_unaligned_c() 143 fault |= __get_user(d3, (u8 *)(addr+3)); in handle_unaligned_c() [all …]
|
| /linux-6.15/arch/x86/kvm/svm/ |
| H A D | svm_ops.h | 12 _ASM_EXTABLE(1b, %l[fault]) \ 13 ::: clobber : fault); \ 15 fault: \ 22 _ASM_EXTABLE(1b, %l[fault]) \ 23 :: op1 : clobber : fault); \ 25 fault: \ 32 _ASM_EXTABLE(1b, %l[fault]) \ 33 :: op1, op2 : clobber : fault); \ 35 fault: \
|
| /linux-6.15/drivers/gpu/drm/nouveau/ |
| H A D | nouveau_svm.c | 66 u8 fault; member 68 } **fault; member 415 fault->hub, in nouveau_svm_fault_cancel_fault() 416 fault->gpc, in nouveau_svm_fault_cancel_fault() 423 switch (fault) { in nouveau_svm_fault_priority() 478 fault = kmalloc(sizeof(*fault), GFP_KERNEL); in nouveau_svm_fault_cache() 483 buffer->fault[buffer->fault_nr] = fault; in nouveau_svm_fault_cache() 486 fault = buffer->fault[buffer->fault_nr++]; in nouveau_svm_fault_cache() 495 fault->fault = (info & 0x0000001f); in nouveau_svm_fault_cache() 498 fault->inst, fault->addr, fault->access); in nouveau_svm_fault_cache() [all …]
|
| /linux-6.15/drivers/iommu/ |
| H A D | io-pgfault.c | 64 struct iommu_fault *fault) in report_partial_fault() argument 72 iopf->fault = *fault; in report_partial_fault() 98 group->last_fault.fault = evt->fault; in iopf_group_alloc() 106 if (iopf->fault.prm.grpid == evt->fault.prm.grpid) in iopf_group_alloc() 121 struct iommu_fault *fault = &evt->fault; in find_fault_handler() local 126 fault->prm.pasid, 0); in find_fault_handler() 161 struct iommu_fault *fault = &evt->fault; in iopf_error_response() local 163 .pasid = fault->prm.pasid, in iopf_error_response() 164 .grpid = fault->prm.grpid, in iopf_error_response() 217 struct iommu_fault *fault = &evt->fault; in iommu_report_device_fault() local [all …]
|
| /linux-6.15/arch/mips/loongson64/ |
| H A D | cop2-ex.c | 76 goto fault; in loongson_cu2_call() 80 goto fault; in loongson_cu2_call() 92 goto fault; in loongson_cu2_call() 96 goto fault; in loongson_cu2_call() 118 goto fault; in loongson_cu2_call() 123 goto fault; in loongson_cu2_call() 135 goto fault; in loongson_cu2_call() 141 goto fault; in loongson_cu2_call() 165 goto fault; in loongson_cu2_call() 176 goto fault; in loongson_cu2_call() [all …]
|
| /linux-6.15/arch/arc/kernel/ |
| H A D | unaligned.c | 51 goto fault; \ 66 goto fault; \ 93 goto fault; \ 126 goto fault; \ 160 fault: state->fault = 1; in fixup_load() 180 goto fault; in fixup_store() 192 fault: state->fault = 1; in fixup_store() 226 goto fault; in misaligned_fixup() 230 goto fault; in misaligned_fixup() 238 goto fault; in misaligned_fixup() [all …]
|
| /linux-6.15/arch/powerpc/mm/ |
| H A D | fault.c | 140 vm_fault_t fault) in do_sigbus() argument 153 if (fault & VM_FAULT_HWPOISON_LARGE) in do_sigbus() 155 if (fault & VM_FAULT_HWPOISON) in do_sigbus() 168 vm_fault_t fault) in mm_fault_error() argument 178 if (fault & VM_FAULT_OOM) { in mm_fault_error() 190 else if (fault & VM_FAULT_SIGSEGV) in mm_fault_error() 422 vm_fault_t fault, major = 0; in ___do_page_fault() local 508 if (!(fault & VM_FAULT_RETRY)) { in ___do_page_fault() 513 if (fault & VM_FAULT_MAJOR) in ___do_page_fault() 549 major |= fault & VM_FAULT_MAJOR; in ___do_page_fault() [all …]
|
| /linux-6.15/arch/powerpc/lib/ |
| H A D | checksum_32.S | 240 fault: label 244 EX_TABLE(70b, fault); 245 EX_TABLE(71b, fault); 246 EX_TABLE(72b, fault); 247 EX_TABLE(73b, fault); 248 EX_TABLE(54b, fault); 269 EX_TABLE(30b, fault); 270 EX_TABLE(31b, fault); 271 EX_TABLE(40b, fault); 272 EX_TABLE(41b, fault); [all …]
|
| /linux-6.15/arch/m68k/mm/ |
| H A D | fault.c | 75 vm_fault_t fault; in do_page_fault() local 141 fault = handle_mm_fault(vma, address, flags, regs); in do_page_fault() 142 pr_debug("handle_mm_fault returns %x\n", fault); in do_page_fault() 144 if (fault_signal_pending(fault, regs)) { in do_page_fault() 151 if (fault & VM_FAULT_COMPLETED) in do_page_fault() 154 if (unlikely(fault & VM_FAULT_ERROR)) { in do_page_fault() 155 if (fault & VM_FAULT_OOM) in do_page_fault() 157 else if (fault & VM_FAULT_SIGSEGV) in do_page_fault() 159 else if (fault & VM_FAULT_SIGBUS) in do_page_fault() 164 if (fault & VM_FAULT_RETRY) { in do_page_fault()
|
| /linux-6.15/arch/riscv/mm/ |
| H A D | fault.c | 121 if (fault & VM_FAULT_OOM) { in mm_fault_error() 132 } else if (fault & VM_FAULT_SIGSEGV) { in mm_fault_error() 283 vm_fault_t fault; in handle_page_fault() local 358 if (!(fault & VM_FAULT_RETRY)) { in handle_page_fault() 363 if (fault & VM_FAULT_MAJOR) in handle_page_fault() 366 if (fault_signal_pending(fault, regs)) { in handle_page_fault() 405 if (fault_signal_pending(fault, regs)) { in handle_page_fault() 412 if (fault & VM_FAULT_COMPLETED) in handle_page_fault() 415 if (unlikely(fault & VM_FAULT_RETRY)) { in handle_page_fault() 429 if (unlikely(fault & VM_FAULT_ERROR)) { in handle_page_fault() [all …]
|
| /linux-6.15/arch/hexagon/mm/ |
| H A D | vm_fault.c | 43 vm_fault_t fault; in do_page_fault() local 84 fault = handle_mm_fault(vma, address, flags, regs); in do_page_fault() 86 if (fault_signal_pending(fault, regs)) { in do_page_fault() 93 if (fault & VM_FAULT_COMPLETED) in do_page_fault() 97 if (likely(!(fault & VM_FAULT_ERROR))) { in do_page_fault() 98 if (fault & VM_FAULT_RETRY) { in do_page_fault() 113 if (fault & VM_FAULT_OOM) { in do_page_fault() 121 if (fault & VM_FAULT_SIGBUS) { in do_page_fault()
|
| /linux-6.15/arch/alpha/mm/ |
| H A D | fault.c | 92 vm_fault_t fault; in do_page_fault() local 145 fault = handle_mm_fault(vma, address, flags, regs); in do_page_fault() 147 if (fault_signal_pending(fault, regs)) { in do_page_fault() 154 if (fault & VM_FAULT_COMPLETED) in do_page_fault() 157 if (unlikely(fault & VM_FAULT_ERROR)) { in do_page_fault() 158 if (fault & VM_FAULT_OOM) in do_page_fault() 160 else if (fault & VM_FAULT_SIGSEGV) in do_page_fault() 162 else if (fault & VM_FAULT_SIGBUS) in do_page_fault() 167 if (fault & VM_FAULT_RETRY) { in do_page_fault()
|
| /linux-6.15/arch/microblaze/mm/ |
| H A D | fault.c | 93 vm_fault_t fault; in do_page_fault() local 221 fault = handle_mm_fault(vma, address, flags, regs); in do_page_fault() 223 if (fault_signal_pending(fault, regs)) { in do_page_fault() 230 if (fault & VM_FAULT_COMPLETED) in do_page_fault() 233 if (unlikely(fault & VM_FAULT_ERROR)) { in do_page_fault() 234 if (fault & VM_FAULT_OOM) in do_page_fault() 236 else if (fault & VM_FAULT_SIGSEGV) in do_page_fault() 238 else if (fault & VM_FAULT_SIGBUS) in do_page_fault() 243 if (fault & VM_FAULT_RETRY) { in do_page_fault()
|
| /linux-6.15/arch/nios2/mm/ |
| H A D | fault.c | 50 vm_fault_t fault; in do_page_fault() local 124 fault = handle_mm_fault(vma, address, flags, regs); in do_page_fault() 126 if (fault_signal_pending(fault, regs)) { in do_page_fault() 133 if (fault & VM_FAULT_COMPLETED) in do_page_fault() 136 if (unlikely(fault & VM_FAULT_ERROR)) { in do_page_fault() 137 if (fault & VM_FAULT_OOM) in do_page_fault() 139 else if (fault & VM_FAULT_SIGSEGV) in do_page_fault() 141 else if (fault & VM_FAULT_SIGBUS) in do_page_fault() 146 if (fault & VM_FAULT_RETRY) { in do_page_fault()
|