/linux-master/drivers/misc/cxl/ |
H A D | fault.c | 22 static bool sste_matches(struct cxl_sste *sste, struct copro_slb *slb) argument 24 return ((sste->vsid_data == cpu_to_be64(slb->vsid)) && 25 (sste->esid_data == cpu_to_be64(slb->esid))); 33 struct copro_slb *slb) 40 if (slb->vsid & SLB_VSID_B_1T) 41 hash = (slb->esid >> SID_SHIFT_1T) & mask; 43 hash = (slb->esid >> SID_SHIFT) & mask; 50 if (sste_matches(sste, slb)) 63 static void cxl_load_segment(struct cxl_context *ctx, struct copro_slb *slb) argument 70 sste = find_free_sste(ctx, slb); 32 find_free_sste(struct cxl_context *ctx, struct copro_slb *slb) argument 87 struct copro_slb slb = {0,0}; local 296 struct copro_slb slb; local [all...] |
/linux-master/arch/powerpc/include/asm/ |
H A D | copro.h | 19 int copro_calculate_slb(struct mm_struct *mm, u64 ea, struct copro_slb *slb);
|
H A D | kvm_book3s_asm.h | 144 u8 slb_max; /* highest used guest slb entry */ 148 } slb[64]; /* guest SLB */
|
H A D | kvm_host.h | 532 struct kvmppc_slb slb[64]; member in struct:kvmppc_slb::kvm_vcpu_arch 533 int slb_max; /* 1 + index of last valid entry in slb[] */
|
/linux-master/arch/powerpc/kvm/ |
H A D | book3s_64_mmu.c | 38 if (!vcpu->arch.slb[i].valid) 41 if (vcpu->arch.slb[i].tb) 44 if (vcpu->arch.slb[i].esid == cmp_esid) 45 return &vcpu->arch.slb[i]; 51 if (vcpu->arch.slb[i].vsid) 53 vcpu->arch.slb[i].valid ? 'v' : ' ', 54 vcpu->arch.slb[i].large ? 'l' : ' ', 55 vcpu->arch.slb[i].tb ? 't' : ' ', 56 vcpu->arch.slb[i].esid, 57 vcpu->arch.slb[ 73 kvmppc_slb_calc_vpn(struct kvmppc_slb *slb, gva_t eaddr) argument 84 struct kvmppc_slb *slb; local 576 struct kvmppc_slb *slb; local [all...] |
H A D | book3s_hv_ras.c | 39 struct slb_shadow *slb; local 46 slb = vcpu->arch.slb_shadow.pinned_addr; 47 if (!slb) 51 n = min_t(u32, be32_to_cpu(slb->persistent), SLB_MIN_SIZE); 52 if ((void *) &slb->save_area[n] > vcpu->arch.slb_shadow.pinned_end) 57 unsigned long rb = be64_to_cpu(slb->save_area[i].esid); 58 unsigned long rs = be64_to_cpu(slb->save_area[i].vsid);
|
H A D | book3s_64_mmu_host.c | 281 if (!(svcpu->slb[i].esid & SLB_ESID_V)) 283 else if ((svcpu->slb[i].esid & ESID_MASK) == esid) { 327 svcpu->slb[slb_index].esid = 0; 348 svcpu->slb[slb_index].esid = slb_esid; 349 svcpu->slb[slb_index].vsid = slb_vsid; 365 if ((svcpu->slb[i].esid & SLB_ESID_V) && 366 (svcpu->slb[i].esid & seg_mask) == ea) { 368 svcpu->slb[i].esid = 0; 379 svcpu->slb[0].esid = 0;
|
H A D | book3s_pr.c | 136 memcpy(svcpu->slb, to_book3s(vcpu)->slb_shadow, sizeof(svcpu->slb)); 168 memcpy(to_book3s(vcpu)->slb_shadow, svcpu->slb, sizeof(svcpu->slb)); 1474 sregs->u.s.ppc64.slb[i].slbe = vcpu->arch.slb[i].orige | i; 1475 sregs->u.s.ppc64.slb[i].slbv = vcpu->arch.slb[i].origv; 1506 u64 rb = sregs->u.s.ppc64.slb[i].slbe; 1507 u64 rs = sregs->u.s.ppc64.slb[ [all...] |
H A D | book3s_hv_p9_entry.c | 347 mtslb(vcpu->arch.slb[i].orige, vcpu->arch.slb[i].origv); 409 vcpu->arch.slb[nr].orige = slbee | i; 410 vcpu->arch.slb[nr].origv = slbev;
|
H A D | book3s_64_mmu_hv.c | 318 if (!(vcpu->arch.slb[i].orige & SLB_ESID_V)) 321 if (vcpu->arch.slb[i].origv & SLB_VSID_B_1T) 326 if (((vcpu->arch.slb[i].orige ^ eaddr) & mask) == 0) 327 return &vcpu->arch.slb[i];
|
H A D | book3s_hv.c | 510 vcpu->arch.slb[r].orige, vcpu->arch.slb[r].origv); 2125 sregs->u.s.ppc64.slb[i].slbe = vcpu->arch.slb[i].orige; 2126 sregs->u.s.ppc64.slb[i].slbv = vcpu->arch.slb[i].origv; 2143 if (sregs->u.s.ppc64.slb[i].slbe & SLB_ESID_V) { 2144 vcpu->arch.slb[j].orige = sregs->u.s.ppc64.slb[i].slbe; 2145 vcpu->arch.slb[ [all...] |
/linux-master/arch/powerpc/mm/ |
H A D | copro_fault.c | 83 int copro_calculate_slb(struct mm_struct *mm, u64 ea, struct copro_slb *slb) argument 132 slb->esid = (ea & (ssize == MMU_SEGSIZE_1T ? ESID_MASK_1T : ESID_MASK)) | SLB_ESID_V; 133 slb->vsid = vsid;
|
/linux-master/arch/powerpc/platforms/cell/ |
H A D | spu_base.c | 134 static inline void spu_load_slb(struct spu *spu, int slbe, struct copro_slb *slb) argument 139 __func__, slbe, slb->vsid, slb->esid); 145 out_be64(&priv2->slb_vsid_RW, slb->vsid); 147 out_be64(&priv2->slb_esid_RW, slb->esid); 152 struct copro_slb slb; local 155 ret = copro_calculate_slb(spu->mm, ea, &slb); 159 spu_load_slb(spu, spu->slb_replace, &slb); 208 static void __spu_kernel_slb(void *addr, struct copro_slb *slb) argument 218 slb [all...] |
/linux-master/arch/powerpc/mm/book3s64/ |
H A D | Makefile | 8 obj-y += hash_pgtable.o hash_utils.o hash_tlb.o slb.o slice.o
|
/linux-master/arch/x86/kvm/ |
H A D | trace.h | 761 TP_PROTO(__u64 rip, __u32 slb), 762 TP_ARGS(rip, slb), 766 __field( __u32, slb ) 771 __entry->slb = slb; 774 TP_printk("rip: 0x%016llx slb: 0x%08x", 775 __entry->rip, __entry->slb)
|
/linux-master/arch/powerpc/kernel/ |
H A D | asm-offsets.c | 461 OFFSET(VCPU_SLB, kvm_vcpu, arch.slb); 554 SVCPU_FIELD(SVCPU_SLB, slb);
|
/linux-master/arch/powerpc/include/uapi/asm/ |
H A D | kvm.h | 184 } slb[64]; member in struct:kvm_sregs::__anon29::__anon30::__anon31
|
/linux-master/tools/arch/powerpc/include/uapi/asm/ |
H A D | kvm.h | 184 } slb[64]; member in struct:kvm_sregs::__anon109::__anon110::__anon111
|