/Linux-v4.19/drivers/misc/cxl/ |
D | irq.c | 29 static irqreturn_t schedule_cxl_fault(struct cxl_context *ctx, u64 dsisr, u64 dar) in schedule_cxl_fault() argument 31 ctx->dsisr = dsisr; in schedule_cxl_fault() 39 u64 dsisr, dar; in cxl_irq_psl9() local 41 dsisr = irq_info->dsisr; in cxl_irq_psl9() 44 trace_cxl_psl9_irq(ctx, irq, dsisr, dar); in cxl_irq_psl9() 46 pr_devel("CXL interrupt %i for afu pe: %i DSISR: %#llx DAR: %#llx\n", irq, ctx->pe, dsisr, dar); in cxl_irq_psl9() 48 if (dsisr & CXL_PSL9_DSISR_An_TF) { in cxl_irq_psl9() 50 return schedule_cxl_fault(ctx, dsisr, dar); in cxl_irq_psl9() 53 if (dsisr & CXL_PSL9_DSISR_An_PE) in cxl_irq_psl9() 54 return cxl_ops->handle_psl_slice_error(ctx, dsisr, in cxl_irq_psl9() [all …]
|
D | fault.c | 110 ctx->fault_dsisr = ctx->dsisr; in cxl_ack_ae() 135 int cxl_handle_mm_fault(struct mm_struct *mm, u64 dsisr, u64 dar) in cxl_handle_mm_fault() argument 157 if ((result = copro_handle_mm_fault(mm, dar, dsisr, &flt))) { in cxl_handle_mm_fault() 168 if (dsisr & CXL_PSL_DSISR_An_S) in cxl_handle_mm_fault() 174 if (dsisr & DSISR_NOHPTE) in cxl_handle_mm_fault() 186 u64 dsisr, u64 dar) in cxl_handle_page_fault() argument 188 trace_cxl_pte_miss(ctx, dsisr, dar); in cxl_handle_page_fault() 190 if (cxl_handle_mm_fault(mm, dsisr, dar)) { in cxl_handle_page_fault() 213 static bool cxl_is_segment_miss(struct cxl_context *ctx, u64 dsisr) in cxl_is_segment_miss() argument 215 if ((cxl_is_power8() && (dsisr & CXL_PSL_DSISR_An_DS))) in cxl_is_segment_miss() [all …]
|
D | trace.h | 167 TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar), 169 TP_ARGS(ctx, irq, dsisr, dar), 176 __field(u64, dsisr) 185 __entry->dsisr = dsisr; 194 __entry->dsisr, 195 dsisr_psl9_flags(__entry->dsisr), 201 TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar), 203 TP_ARGS(ctx, irq, dsisr, dar), 210 __field(u64, dsisr) 219 __entry->dsisr = dsisr; [all …]
|
D | native.c | 138 u64 dsisr, dar; in cxl_psl_purge() local 180 dsisr = cxl_p2n_read(afu, CXL_PSL_DSISR_An); in cxl_psl_purge() 182 PSL_CNTL, dsisr); in cxl_psl_purge() 184 if (dsisr & trans_fault) { in cxl_psl_purge() 187 dsisr, dar); in cxl_psl_purge() 189 } else if (dsisr) { in cxl_psl_purge() 191 dsisr); in cxl_psl_purge() 1096 info->dsisr = cxl_p2n_read(afu, CXL_PSL_DSISR_An); in native_get_irq_info() 1140 u64 dsisr, u64 errstat) in native_handle_psl_slice_error() argument 1156 static bool cxl_is_translation_fault(struct cxl_afu *afu, u64 dsisr) in cxl_is_translation_fault() argument [all …]
|
/Linux-v4.19/arch/powerpc/include/asm/ |
D | disassemble.h | 103 unsigned dsisr; in make_dsisr() local 107 dsisr = (instr & 0x03ff0000) >> 16; in make_dsisr() 111 dsisr |= (instr & 0x00000006) << 14; in make_dsisr() 113 dsisr |= (instr & 0x00000040) << 8; in make_dsisr() 115 dsisr |= (instr & 0x00000780) << 3; in make_dsisr() 118 dsisr |= (instr & 0x04000000) >> 12; in make_dsisr() 120 dsisr |= (instr & 0x78000000) >> 17; in make_dsisr() 123 dsisr |= (instr & 0x00000003) << 18; in make_dsisr() 126 return dsisr; in make_dsisr()
|
D | pnv-ocxl.h | 22 extern void pnv_ocxl_unmap_xsl_regs(void __iomem *dsisr, void __iomem *dar, 24 extern int pnv_ocxl_map_xsl_regs(struct pci_dev *dev, void __iomem **dsisr,
|
D | spu_priv1.h | 41 void (*mfc_dsisr_set) (struct spu *spu, u64 dsisr); 111 spu_mfc_dsisr_set (struct spu *spu, u64 dsisr) in spu_mfc_dsisr_set() argument 113 spu_priv1_ops->mfc_dsisr_set(spu, dsisr); in spu_mfc_dsisr_set()
|
D | copro.h | 21 unsigned long dsisr, vm_fault_t *flt);
|
/Linux-v4.19/drivers/misc/ocxl/ |
D | trace.h | 71 TP_PROTO(void *spa, u64 pe, u64 dsisr, u64 dar, u64 tfc), 72 TP_ARGS(spa, pe, dsisr, dar, tfc), 77 __field(u64, dsisr) 85 __entry->dsisr = dsisr; 93 __entry->dsisr, 100 TP_PROTO(void *spa, u64 pe, u64 dsisr, u64 dar, u64 tfc), 101 TP_ARGS(spa, pe, dsisr, dar, tfc) 105 TP_PROTO(void *spa, u64 pe, u64 dsisr, u64 dar, u64 tfc), 106 TP_ARGS(spa, pe, dsisr, dar, tfc)
|
D | link.c | 39 void (*xsl_err_cb)(void *data, u64 addr, u64 dsisr); 65 u64 dsisr; member 99 static void read_irq(struct spa *spa, u64 *dsisr, u64 *dar, u64 *pe) in read_irq() argument 103 *dsisr = in_be64(spa->reg_dsisr); in read_irq() 123 spa->xsl_fault.dsisr, spa->xsl_fault.dar, reg); in ack_irq() 143 rc = copro_handle_mm_fault(fault->pe_data.mm, fault->dar, fault->dsisr, in xsl_fault_handler_bh() 150 fault->dar, fault->dsisr); in xsl_fault_handler_bh() 163 if (fault->dsisr & SPA_XSL_S) in xsl_fault_handler_bh() 184 u64 dsisr, dar, pe_handle; in xsl_fault_handler() local 190 read_irq(spa, &dsisr, &dar, &pe_handle); in xsl_fault_handler() [all …]
|
D | context.c | 53 static void xsl_fault_error(void *data, u64 addr, u64 dsisr) in xsl_fault_error() argument 59 ctx->xsl_error.dsisr = dsisr; in xsl_fault_error()
|
/Linux-v4.19/arch/powerpc/kvm/ |
D | book3s_hv_ras.c | 80 unsigned long dsisr = vcpu->arch.shregs.dsisr; in kvmppc_realmode_mc_power7() local 82 if (dsisr & (DSISR_MC_SLB_PARMULTI | DSISR_MC_SLB_MULTI | in kvmppc_realmode_mc_power7() 86 dsisr &= ~(DSISR_MC_SLB_PARMULTI | DSISR_MC_SLB_MULTI | in kvmppc_realmode_mc_power7() 89 if (dsisr & DSISR_MC_TLB_MULTI) { in kvmppc_realmode_mc_power7() 91 dsisr &= ~DSISR_MC_TLB_MULTI; in kvmppc_realmode_mc_power7() 94 if (dsisr & 0xffffffffUL) in kvmppc_realmode_mc_power7()
|
D | book3s_64_mmu_radix.c | 525 unsigned long ea, unsigned long dsisr) in kvmppc_book3s_radix_page_fault() argument 541 if (dsisr & DSISR_UNSUPP_MMU) { in kvmppc_book3s_radix_page_fault() 545 if (dsisr & DSISR_BADACCESS) { in kvmppc_book3s_radix_page_fault() 547 pr_err("KVM: Got radix HV page fault with DSISR=%lx\n", dsisr); in kvmppc_book3s_radix_page_fault() 548 kvmppc_core_queue_data_storage(vcpu, ea, dsisr); in kvmppc_book3s_radix_page_fault() 556 if (!(dsisr & DSISR_PRTABLE_FAULT)) in kvmppc_book3s_radix_page_fault() 562 if (dsisr & (DSISR_PRTABLE_FAULT | DSISR_BADACCESS | in kvmppc_book3s_radix_page_fault() 568 kvmppc_core_queue_data_storage(vcpu, ea, dsisr); in kvmppc_book3s_radix_page_fault() 572 dsisr & DSISR_ISSTORE); in kvmppc_book3s_radix_page_fault() 575 writing = (dsisr & DSISR_ISSTORE) != 0; in kvmppc_book3s_radix_page_fault() [all …]
|
D | trace_hv.h | 277 unsigned long dsisr), 279 TP_ARGS(vcpu, hptep, memslot, ea, dsisr), 289 __field(u32, dsisr) 298 __entry->dsisr = dsisr; 306 __entry->ea, __entry->dsisr,
|
/Linux-v4.19/arch/powerpc/platforms/cell/spufs/ |
D | fault.c | 112 u64 ea, dsisr, access; in spufs_handle_class1() local 127 dsisr = ctx->csa.class_1_dsisr; in spufs_handle_class1() 129 if (!(dsisr & (MFC_DSISR_PTE_NOT_FOUND | MFC_DSISR_ACCESS_DENIED))) in spufs_handle_class1() 135 dsisr, ctx->state); in spufs_handle_class1() 145 access |= (dsisr & MFC_DSISR_ACCESS_PUT) ? _PAGE_WRITE : 0UL; in spufs_handle_class1() 147 ret = hash_page(ea, access, 0x300, dsisr); in spufs_handle_class1() 152 ret = copro_handle_mm_fault(current->mm, ea, dsisr, &flt); in spufs_handle_class1()
|
D | run.c | 51 u64 dsisr; in spu_stopped() local 72 dsisr = ctx->csa.class_1_dsisr; in spu_stopped() 73 if (dsisr & (MFC_DSISR_PTE_NOT_FOUND | MFC_DSISR_ACCESS_DENIED)) in spu_stopped()
|
/Linux-v4.19/arch/powerpc/platforms/pasemi/ |
D | setup.c | 259 unsigned long srr0, srr1, dsisr; in pas_machine_check_handler() local 273 dsisr = mfspr(SPRN_DSISR); in pas_machine_check_handler() 276 pr_err("DSISR 0x%016lx DAR 0x%016lx\n", dsisr, regs->dar); in pas_machine_check_handler() 288 if (dsisr & 0x8000) in pas_machine_check_handler() 290 if (dsisr & 0x4000) in pas_machine_check_handler() 292 if (dsisr & 0x2000) { in pas_machine_check_handler() 296 if (dsisr & 0x1000) in pas_machine_check_handler() 298 if (dsisr & 0x800) in pas_machine_check_handler() 300 if (dsisr & 0x400) in pas_machine_check_handler()
|
/Linux-v4.19/arch/powerpc/mm/ |
D | copro_fault.c | 37 unsigned long dsisr, vm_fault_t *flt) in copro_handle_mm_fault() argument 62 is_write = dsisr & DSISR_ISSTORE; in copro_handle_mm_fault() 76 WARN_ON_ONCE(dsisr & DSISR_PROTFAULT); in copro_handle_mm_fault()
|
/Linux-v4.19/arch/powerpc/platforms/cell/ |
D | spu_base.c | 185 unsigned long trap, unsigned long dsisr); //XXX 186 static int __spu_trap_data_map(struct spu *spu, unsigned long ea, u64 dsisr) in __spu_trap_data_map() argument 190 pr_debug("%s, %llx, %lx\n", __func__, dsisr, ea); in __spu_trap_data_map() 196 if ((dsisr & MFC_DSISR_PTE_NOT_FOUND) && in __spu_trap_data_map() 202 0x300, dsisr); in __spu_trap_data_map() 212 spu->class_1_dsisr = dsisr; in __spu_trap_data_map() 320 unsigned long stat, mask, dar, dsisr; in spu_irq_class_1() local 329 dsisr = spu_mfc_dsisr_get(spu); in spu_irq_class_1() 335 dar, dsisr); in spu_irq_class_1() 341 __spu_trap_data_map(spu, dar, dsisr); in spu_irq_class_1()
|
D | spu_priv1_mmio.c | 103 static void mfc_dsisr_set(struct spu *spu, u64 dsisr) in mfc_dsisr_set() argument 105 out_be64(&spu->priv1->mfc_dsisr_RW, dsisr); in mfc_dsisr_set()
|
/Linux-v4.19/arch/powerpc/platforms/44x/ |
D | machine_check.c | 16 unsigned long reason = regs->dsisr; in machine_check_440A() 53 unsigned long reason = regs->dsisr; in machine_check_47x()
|
/Linux-v4.19/arch/powerpc/kernel/ |
D | mce_power.c | 455 uint64_t dsisr = regs->dsisr; in mce_handle_derror() local 463 if (!(dsisr & table[i].dsisr_value)) in mce_handle_derror() 586 regs->dsisr &= 0x0000ffff; in __machine_check_early_realmode_p7() 608 if (SRR1_MC_LOADSTORE(regs->msr) && regs->dsisr == 0x02000000) in __machine_check_early_realmode_p9()
|
/Linux-v4.19/arch/powerpc/platforms/4xx/ |
D | machine_check.c | 16 unsigned long reason = regs->dsisr; in machine_check_4xx()
|
/Linux-v4.19/tools/perf/arch/powerpc/include/ |
D | dwarf-regs-table.h | 25 REG_DWARFNUM_NAME(dsisr, 118),
|
/Linux-v4.19/arch/powerpc/platforms/powernv/ |
D | ocxl.c | 386 void pnv_ocxl_unmap_xsl_regs(void __iomem *dsisr, void __iomem *dar, in pnv_ocxl_unmap_xsl_regs() argument 389 iounmap(dsisr); in pnv_ocxl_unmap_xsl_regs() 396 int pnv_ocxl_map_xsl_regs(struct pci_dev *dev, void __iomem **dsisr, in pnv_ocxl_map_xsl_regs() argument 425 *dsisr = regs[0]; in pnv_ocxl_map_xsl_regs()
|