slb 19 arch/powerpc/include/asm/copro.h int copro_calculate_slb(struct mm_struct *mm, u64 ea, struct copro_slb *slb); slb 162 arch/powerpc/include/asm/kvm_book3s_asm.h } slb[64]; /* guest SLB */ slb 518 arch/powerpc/include/asm/kvm_host.h struct kvmppc_slb slb[64]; slb 185 arch/powerpc/include/uapi/asm/kvm.h } slb[64]; slb 547 arch/powerpc/kernel/asm-offsets.c OFFSET(VCPU_SLB, kvm_vcpu, arch.slb); slb 643 arch/powerpc/kernel/asm-offsets.c SVCPU_FIELD(SVCPU_SLB, slb); slb 52 arch/powerpc/kvm/book3s_64_mmu.c if (!vcpu->arch.slb[i].valid) slb 55 arch/powerpc/kvm/book3s_64_mmu.c if (vcpu->arch.slb[i].tb) slb 58 arch/powerpc/kvm/book3s_64_mmu.c if (vcpu->arch.slb[i].esid == cmp_esid) slb 59 arch/powerpc/kvm/book3s_64_mmu.c return &vcpu->arch.slb[i]; slb 65 arch/powerpc/kvm/book3s_64_mmu.c if (vcpu->arch.slb[i].vsid) slb 67 arch/powerpc/kvm/book3s_64_mmu.c vcpu->arch.slb[i].valid ? 'v' : ' ', slb 68 arch/powerpc/kvm/book3s_64_mmu.c vcpu->arch.slb[i].large ? 'l' : ' ', slb 69 arch/powerpc/kvm/book3s_64_mmu.c vcpu->arch.slb[i].tb ? 't' : ' ', slb 70 arch/powerpc/kvm/book3s_64_mmu.c vcpu->arch.slb[i].esid, slb 71 arch/powerpc/kvm/book3s_64_mmu.c vcpu->arch.slb[i].vsid); slb 87 arch/powerpc/kvm/book3s_64_mmu.c static u64 kvmppc_slb_calc_vpn(struct kvmppc_slb *slb, gva_t eaddr) slb 89 arch/powerpc/kvm/book3s_64_mmu.c eaddr &= kvmppc_slb_offset_mask(slb); slb 92 arch/powerpc/kvm/book3s_64_mmu.c ((slb->vsid) << (kvmppc_slb_sid_shift(slb) - VPN_SHIFT)); slb 98 arch/powerpc/kvm/book3s_64_mmu.c struct kvmppc_slb *slb; slb 100 arch/powerpc/kvm/book3s_64_mmu.c slb = kvmppc_mmu_book3s_64_find_slbe(vcpu, eaddr); slb 101 arch/powerpc/kvm/book3s_64_mmu.c if (!slb) slb 104 arch/powerpc/kvm/book3s_64_mmu.c return kvmppc_slb_calc_vpn(slb, eaddr); slb 393 arch/powerpc/kvm/book3s_64_mmu.c slbe = &vcpu->arch.slb[slb_nr]; slb 447 arch/powerpc/kvm/book3s_64_mmu.c slbe = &vcpu->arch.slb[slb_nr]; slb 459 arch/powerpc/kvm/book3s_64_mmu.c slbe = &vcpu->arch.slb[slb_nr]; slb 493 arch/powerpc/kvm/book3s_64_mmu.c vcpu->arch.slb[i].valid = false; slb 494 arch/powerpc/kvm/book3s_64_mmu.c vcpu->arch.slb[i].orige = 0; slb 495 arch/powerpc/kvm/book3s_64_mmu.c vcpu->arch.slb[i].origv = 0; slb 591 arch/powerpc/kvm/book3s_64_mmu.c struct kvmppc_slb *slb; slb 598 arch/powerpc/kvm/book3s_64_mmu.c slb = kvmppc_mmu_book3s_64_find_slbe(vcpu, ea); slb 599 arch/powerpc/kvm/book3s_64_mmu.c if (slb) { slb 600 arch/powerpc/kvm/book3s_64_mmu.c gvsid = slb->vsid; slb 601 arch/powerpc/kvm/book3s_64_mmu.c pagesize = slb->base_page_size; slb 602 arch/powerpc/kvm/book3s_64_mmu.c if (slb->tb) { slb 621 arch/powerpc/kvm/book3s_64_mmu.c if (!slb) slb 279 arch/powerpc/kvm/book3s_64_mmu_host.c if (!(svcpu->slb[i].esid & SLB_ESID_V)) slb 281 arch/powerpc/kvm/book3s_64_mmu_host.c else if ((svcpu->slb[i].esid & ESID_MASK) == esid) { slb 325 arch/powerpc/kvm/book3s_64_mmu_host.c svcpu->slb[slb_index].esid = 0; slb 346 arch/powerpc/kvm/book3s_64_mmu_host.c svcpu->slb[slb_index].esid = slb_esid; slb 347 arch/powerpc/kvm/book3s_64_mmu_host.c svcpu->slb[slb_index].vsid = slb_vsid; slb 363 arch/powerpc/kvm/book3s_64_mmu_host.c if ((svcpu->slb[i].esid & SLB_ESID_V) && slb 364 arch/powerpc/kvm/book3s_64_mmu_host.c (svcpu->slb[i].esid & seg_mask) == ea) { slb 366 arch/powerpc/kvm/book3s_64_mmu_host.c svcpu->slb[i].esid = 0; slb 377 arch/powerpc/kvm/book3s_64_mmu_host.c svcpu->slb[0].esid = 0; slb 317 arch/powerpc/kvm/book3s_64_mmu_hv.c if (!(vcpu->arch.slb[i].orige & SLB_ESID_V)) slb 320 arch/powerpc/kvm/book3s_64_mmu_hv.c if (vcpu->arch.slb[i].origv & SLB_VSID_B_1T) slb 325 arch/powerpc/kvm/book3s_64_mmu_hv.c if (((vcpu->arch.slb[i].orige ^ eaddr) & mask) == 0) slb 326 arch/powerpc/kvm/book3s_64_mmu_hv.c return &vcpu->arch.slb[i]; slb 441 arch/powerpc/kvm/book3s_hv.c vcpu->arch.slb[r].orige, vcpu->arch.slb[r].origv); slb 1545 arch/powerpc/kvm/book3s_hv.c sregs->u.s.ppc64.slb[i].slbe = vcpu->arch.slb[i].orige; slb 1546 arch/powerpc/kvm/book3s_hv.c sregs->u.s.ppc64.slb[i].slbv = vcpu->arch.slb[i].origv; slb 1563 arch/powerpc/kvm/book3s_hv.c if (sregs->u.s.ppc64.slb[i].slbe & SLB_ESID_V) { slb 1564 arch/powerpc/kvm/book3s_hv.c vcpu->arch.slb[j].orige = sregs->u.s.ppc64.slb[i].slbe; slb 1565 arch/powerpc/kvm/book3s_hv.c vcpu->arch.slb[j].origv = sregs->u.s.ppc64.slb[i].slbv; slb 38 arch/powerpc/kvm/book3s_hv_ras.c struct slb_shadow *slb; slb 45 arch/powerpc/kvm/book3s_hv_ras.c slb = vcpu->arch.slb_shadow.pinned_addr; slb 46 arch/powerpc/kvm/book3s_hv_ras.c if (!slb) slb 50 arch/powerpc/kvm/book3s_hv_ras.c n = min_t(u32, be32_to_cpu(slb->persistent), SLB_MIN_SIZE); slb 51 arch/powerpc/kvm/book3s_hv_ras.c if ((void *) &slb->save_area[n] > vcpu->arch.slb_shadow.pinned_end) slb 56 arch/powerpc/kvm/book3s_hv_ras.c unsigned long rb = be64_to_cpu(slb->save_area[i].esid); slb 57 arch/powerpc/kvm/book3s_hv_ras.c unsigned long rs = be64_to_cpu(slb->save_area[i].vsid); slb 99 arch/powerpc/kvm/book3s_pr.c memcpy(svcpu->slb, to_book3s(vcpu)->slb_shadow, sizeof(svcpu->slb)); slb 128 arch/powerpc/kvm/book3s_pr.c memcpy(to_book3s(vcpu)->slb_shadow, svcpu->slb, sizeof(svcpu->slb)); slb 1450 arch/powerpc/kvm/book3s_pr.c sregs->u.s.ppc64.slb[i].slbe = vcpu->arch.slb[i].orige | i; slb 1451 arch/powerpc/kvm/book3s_pr.c sregs->u.s.ppc64.slb[i].slbv = vcpu->arch.slb[i].origv; slb 1482 arch/powerpc/kvm/book3s_pr.c u64 rb = sregs->u.s.ppc64.slb[i].slbe; slb 1483 arch/powerpc/kvm/book3s_pr.c u64 rs = sregs->u.s.ppc64.slb[i].slbv; slb 90 arch/powerpc/mm/copro_fault.c int copro_calculate_slb(struct mm_struct *mm, u64 ea, struct copro_slb *slb) slb 139 arch/powerpc/mm/copro_fault.c slb->esid = (ea & (ssize == MMU_SEGSIZE_1T ? ESID_MASK_1T : ESID_MASK)) | SLB_ESID_V; slb 140 arch/powerpc/mm/copro_fault.c slb->vsid = vsid; slb 135 arch/powerpc/platforms/cell/spu_base.c static inline void spu_load_slb(struct spu *spu, int slbe, struct copro_slb *slb) slb 140 arch/powerpc/platforms/cell/spu_base.c __func__, slbe, slb->vsid, slb->esid); slb 146 arch/powerpc/platforms/cell/spu_base.c out_be64(&priv2->slb_vsid_RW, slb->vsid); slb 148 arch/powerpc/platforms/cell/spu_base.c out_be64(&priv2->slb_esid_RW, slb->esid); slb 153 arch/powerpc/platforms/cell/spu_base.c struct copro_slb slb; slb 156 arch/powerpc/platforms/cell/spu_base.c ret = copro_calculate_slb(spu->mm, ea, &slb); slb 160 arch/powerpc/platforms/cell/spu_base.c spu_load_slb(spu, spu->slb_replace, &slb); slb 209 arch/powerpc/platforms/cell/spu_base.c static void __spu_kernel_slb(void *addr, struct copro_slb *slb) slb 219 arch/powerpc/platforms/cell/spu_base.c slb->vsid = (get_kernel_vsid(ea, MMU_SEGSIZE_256M) << SLB_VSID_SHIFT) | slb 221 arch/powerpc/platforms/cell/spu_base.c slb->esid = (ea & ESID_MASK) | SLB_ESID_V; slb 677 arch/x86/kvm/trace.h TP_PROTO(__u64 rip, __u32 slb), slb 678 arch/x86/kvm/trace.h TP_ARGS(rip, slb), slb 682 arch/x86/kvm/trace.h __field( __u32, slb ) slb 687 arch/x86/kvm/trace.h __entry->slb = slb; slb 691 arch/x86/kvm/trace.h __entry->rip, __entry->slb) slb 22 drivers/misc/cxl/fault.c static bool sste_matches(struct cxl_sste *sste, struct copro_slb *slb) slb 24 drivers/misc/cxl/fault.c return ((sste->vsid_data == cpu_to_be64(slb->vsid)) && slb 25 drivers/misc/cxl/fault.c (sste->esid_data == cpu_to_be64(slb->esid))); slb 33 drivers/misc/cxl/fault.c struct copro_slb *slb) slb 40 drivers/misc/cxl/fault.c if (slb->vsid & SLB_VSID_B_1T) slb 41 drivers/misc/cxl/fault.c hash = (slb->esid >> SID_SHIFT_1T) & mask; slb 43 drivers/misc/cxl/fault.c hash = (slb->esid >> SID_SHIFT) & mask; slb 50 drivers/misc/cxl/fault.c if (sste_matches(sste, slb)) slb 63 drivers/misc/cxl/fault.c static void cxl_load_segment(struct cxl_context *ctx, struct copro_slb *slb) slb 70 drivers/misc/cxl/fault.c sste = find_free_sste(ctx, slb); slb 75 drivers/misc/cxl/fault.c sste - ctx->sstp, slb->vsid, slb->esid); slb 76 drivers/misc/cxl/fault.c trace_cxl_ste_write(ctx, sste - ctx->sstp, slb->esid, slb->vsid); slb 78 drivers/misc/cxl/fault.c sste->vsid_data = cpu_to_be64(slb->vsid); slb 79 drivers/misc/cxl/fault.c sste->esid_data = cpu_to_be64(slb->esid); slb 87 drivers/misc/cxl/fault.c struct copro_slb slb = {0,0}; slb 90 drivers/misc/cxl/fault.c if (!(rc = copro_calculate_slb(mm, ea, &slb))) { slb 91 drivers/misc/cxl/fault.c cxl_load_segment(ctx, &slb); slb 312 drivers/misc/cxl/fault.c struct copro_slb slb; slb 327 drivers/misc/cxl/fault.c ea = next_segment(ea, slb.vsid)) { slb 328 drivers/misc/cxl/fault.c rc = copro_calculate_slb(mm, ea, &slb); slb 332 drivers/misc/cxl/fault.c if (last_esid == slb.esid) slb 335 drivers/misc/cxl/fault.c cxl_load_segment(ctx, &slb); slb 336 drivers/misc/cxl/fault.c last_esid = slb.esid; slb 185 tools/arch/powerpc/include/uapi/asm/kvm.h } slb[64];