Lines Matching refs:sie_block

285 			kvm_clock_sync_scb(vcpu->arch.sie_block, *delta);
287 kvm->arch.epoch = vcpu->arch.sie_block->epoch;
288 kvm->arch.epdx = vcpu->arch.sie_block->epdx;
2789 free_page((unsigned long)(vcpu->arch.sie_block));
2869 vcpu->arch.sie_block->scaoh = (__u32)(((__u64)sca) >> 32);
2870 vcpu->arch.sie_block->scaol = (__u32)(__u64)sca;
2877 sca->cpu[vcpu->vcpu_id].sda = (__u64) vcpu->arch.sie_block;
2878 vcpu->arch.sie_block->scaoh = (__u32)(((__u64)sca) >> 32);
2879 vcpu->arch.sie_block->scaol = (__u32)(__u64)sca & ~0x3fU;
2880 vcpu->arch.sie_block->ecb2 |= ECB2_ESCA;
2885 sca->cpu[vcpu->vcpu_id].sda = (__u64) vcpu->arch.sie_block;
2886 vcpu->arch.sie_block->scaoh = (__u32)(((__u64)sca) >> 32);
2887 vcpu->arch.sie_block->scaol = (__u32)(__u64)sca;
2935 vcpu->arch.sie_block->scaoh = scaoh;
2936 vcpu->arch.sie_block->scaol = scaol;
2937 vcpu->arch.sie_block->ecb2 |= ECB2_ESCA;
2987 vcpu->arch.sie_block->cputm -= get_tod_clock_fast() - vcpu->arch.cputm_start;
3029 vcpu->arch.sie_block->cputm = cputm;
3041 return vcpu->arch.sie_block->cputm;
3051 value = vcpu->arch.sie_block->cputm;
3085 vcpu->arch.sie_block->epoch = vcpu->kvm->arch.epoch;
3086 vcpu->arch.sie_block->epdx = vcpu->kvm->arch.epdx;
3094 vcpu->arch.sie_block->ictl |= ICTL_OPEREXC;
3127 vcpu->arch.sie_block->crycbd = vcpu->kvm->arch.crypto.crycbd;
3128 vcpu->arch.sie_block->ecb3 &= ~(ECB3_AES | ECB3_DEA);
3129 vcpu->arch.sie_block->eca &= ~ECA_APIE;
3130 vcpu->arch.sie_block->ecd &= ~ECD_ECC;
3133 vcpu->arch.sie_block->eca |= ECA_APIE;
3137 vcpu->arch.sie_block->ecb3 |= ECB3_AES;
3140 vcpu->arch.sie_block->ecd |= ECD_ECC;
3144 vcpu->arch.sie_block->ecb3 |= ECB3_DEA;
3149 free_page(vcpu->arch.sie_block->cbrlo);
3150 vcpu->arch.sie_block->cbrlo = 0;
3155 vcpu->arch.sie_block->cbrlo = get_zeroed_page(GFP_KERNEL);
3156 if (!vcpu->arch.sie_block->cbrlo)
3165 vcpu->arch.sie_block->ibc = model->ibc;
3167 vcpu->arch.sie_block->fac = (u32)(u64) model->fac_list;
3175 atomic_set(&vcpu->arch.sie_block->cpuflags, CPUSTAT_ZARCH |
3188 vcpu->arch.sie_block->ecb |= ECB_HOSTPROTINT;
3190 vcpu->arch.sie_block->ecb |= ECB_SRSI;
3192 vcpu->arch.sie_block->ecb |= ECB_TE;
3195 vcpu->arch.sie_block->ecb2 |= ECB2_PFMFI;
3197 vcpu->arch.sie_block->ecb2 |= ECB2_IEP;
3198 vcpu->arch.sie_block->eca = ECA_MVPGI | ECA_PROTEXCI;
3200 vcpu->arch.sie_block->eca |= ECA_CEI;
3202 vcpu->arch.sie_block->eca |= ECA_IB;
3204 vcpu->arch.sie_block->eca |= ECA_SII;
3206 vcpu->arch.sie_block->eca |= ECA_SIGPI;
3208 vcpu->arch.sie_block->eca |= ECA_VX;
3209 vcpu->arch.sie_block->ecd |= ECD_HOSTREGMGMT;
3212 vcpu->arch.sie_block->ecd |= ECD_MEF;
3214 vcpu->arch.sie_block->ecd |= ECD_ETOKENF;
3215 if (vcpu->arch.sie_block->gd) {
3216 vcpu->arch.sie_block->eca |= ECA_AIV;
3218 vcpu->arch.sie_block->gd & 0x3, vcpu->vcpu_id);
3220 vcpu->arch.sie_block->sdnxo = ((unsigned long) &vcpu->run->s.regs.sdnx)
3222 vcpu->arch.sie_block->riccbd = (unsigned long) &vcpu->run->s.regs.riccb;
3227 vcpu->arch.sie_block->ictl |= ICTL_ISKE | ICTL_SSKE | ICTL_RRBE;
3237 vcpu->arch.sie_block->hpid = HPID_KVM;
3269 vcpu->arch.sie_block = &sie_page->sie_block;
3270 vcpu->arch.sie_block->itdba = (unsigned long) &sie_page->itdb;
3273 vcpu->arch.sie_block->mso = 0;
3274 vcpu->arch.sie_block->msl = sclp.hamax;
3276 vcpu->arch.sie_block->icpua = vcpu->vcpu_id;
3278 vcpu->arch.sie_block->gd = (u32)(u64)vcpu->kvm->arch.gisa_int.origin;
3279 if (vcpu->arch.sie_block->gd && sclp.has_gisaf)
3280 vcpu->arch.sie_block->gd |= GISA_FORMAT1;
3316 vcpu->vcpu_id, vcpu, vcpu->arch.sie_block);
3317 trace_kvm_s390_create_vcpu(vcpu->vcpu_id, vcpu, vcpu->arch.sie_block);
3328 free_page((unsigned long)(vcpu->arch.sie_block));
3340 return !(vcpu->arch.sie_block->gpsw.mask & PSW_MASK_PSTATE);
3345 atomic_or(PROG_BLOCK_SIE, &vcpu->arch.sie_block->prog20);
3351 atomic_andnot(PROG_BLOCK_SIE, &vcpu->arch.sie_block->prog20);
3356 atomic_or(PROG_REQUEST, &vcpu->arch.sie_block->prog20);
3362 return atomic_read(&vcpu->arch.sie_block->prog20) &
3368 atomic_andnot(PROG_REQUEST, &vcpu->arch.sie_block->prog20);
3379 while (vcpu->arch.sie_block->prog0c & PROG_IN_SIE)
3439 r = put_user(vcpu->arch.sie_block->todpr,
3443 r = put_user(vcpu->arch.sie_block->epoch,
3451 r = put_user(vcpu->arch.sie_block->ckc,
3467 r = put_user(vcpu->arch.sie_block->pp,
3471 r = put_user(vcpu->arch.sie_block->gbea,
3489 r = get_user(vcpu->arch.sie_block->todpr,
3493 r = get_user(vcpu->arch.sie_block->epoch,
3502 r = get_user(vcpu->arch.sie_block->ckc,
3520 r = get_user(vcpu->arch.sie_block->pp,
3524 r = get_user(vcpu->arch.sie_block->gbea,
3536 vcpu->arch.sie_block->gpsw.mask &= ~PSW_MASK_RI;
3555 vcpu->arch.sie_block->gpsw.mask = 0;
3556 vcpu->arch.sie_block->gpsw.addr = 0;
3559 vcpu->arch.sie_block->ckc = 0;
3560 memset(vcpu->arch.sie_block->gcr, 0, sizeof(vcpu->arch.sie_block->gcr));
3561 vcpu->arch.sie_block->gcr[0] = CR0_INITIAL_MASK;
3562 vcpu->arch.sie_block->gcr[14] = CR14_INITIAL_MASK;
3583 vcpu->arch.sie_block->gbea = 1;
3584 vcpu->arch.sie_block->pp = 0;
3585 vcpu->arch.sie_block->fpf &= ~FPF_BPBC;
3586 vcpu->arch.sie_block->todpr = 0;
3628 memcpy(&vcpu->arch.sie_block->gcr, &sregs->crs, sizeof(sregs->crs));
3640 memcpy(&sregs->crs, &vcpu->arch.sie_block->gcr, sizeof(sregs->crs));
3825 vcpu->arch.sie_block->ihcpu = 0xffff;
3846 vcpu->arch.sie_block->ictl |= ICTL_OPEREXC;
3856 vcpu->arch.sie_block->ecb2 &= ~ECB2_CMMA;
3867 vcpu->arch.sie_block->ecb2 |= ECB2_CMMA;
3899 vcpu->arch.sie_block->epoch = kvm->arch.epoch;
3900 vcpu->arch.sie_block->epdx = kvm->arch.epdx;
3987 if ((vcpu->arch.sie_block->gpsw.mask & vcpu->arch.pfault_select) !=
3994 if (!(vcpu->arch.sie_block->gcr[0] & CR0_SERVICE_SIGNAL_SUBMASK))
4018 vcpu->arch.sie_block->gg14 = vcpu->run->s.regs.gprs[14];
4019 vcpu->arch.sie_block->gg15 = vcpu->run->s.regs.gprs[15];
4041 vcpu->arch.sie_block->icptcode = 0;
4042 cpuflags = atomic_read(&vcpu->arch.sie_block->cpuflags);
4068 rc = read_guest_instr(vcpu, vcpu->arch.sie_block->gpsw.addr, &opcode, 1);
4091 vcpu->arch.sie_block->icptcode);
4092 trace_kvm_s390_sie_exit(vcpu, vcpu->arch.sie_block->icptcode);
4097 vcpu->run->s.regs.gprs[14] = vcpu->arch.sie_block->gg14;
4098 vcpu->run->s.regs.gprs[15] = vcpu->arch.sie_block->gg15;
4102 sie_page = container_of(vcpu->arch.sie_block,
4103 struct sie_page, sie_block);
4109 if (vcpu->arch.sie_block->icptcode > 0) {
4115 vcpu->run->s390_sieic.icptcode = vcpu->arch.sie_block->icptcode;
4116 vcpu->run->s390_sieic.ipa = vcpu->arch.sie_block->ipa;
4117 vcpu->run->s390_sieic.ipb = vcpu->arch.sie_block->ipb;
4142 struct sie_page *sie_page = (struct sie_page *)vcpu->arch.sie_block;
4169 exit_reason = sie64a(vcpu->arch.sie_block,
4181 if (vcpu->arch.sie_block->icptcode == ICPT_PV_INSTR ||
4182 vcpu->arch.sie_block->icptcode == ICPT_PV_PREF) {
4183 vcpu->arch.sie_block->gpsw.mask &= ~PSW_INT_MASK;
4207 vcpu->arch.sie_block->gpsw.mask = kvm_run->psw_mask;
4208 vcpu->arch.sie_block->gpsw.addr = kvm_run->psw_addr;
4210 vcpu->arch.sie_block->todpr = kvm_run->s.regs.todpr;
4211 vcpu->arch.sie_block->pp = kvm_run->s.regs.pp;
4212 vcpu->arch.sie_block->gbea = kvm_run->s.regs.gbea;
4223 vcpu->arch.sie_block->cpnc = vcpu->arch.diag318_info.cpnc;
4232 !(vcpu->arch.sie_block->ecb3 & ECB3_RI)) {
4234 vcpu->arch.sie_block->ecb3 |= ECB3_RI;
4245 vcpu->arch.sie_block->ecb |= ECB_GS;
4246 vcpu->arch.sie_block->ecd |= ECD_HOSTREGMGMT;
4251 vcpu->arch.sie_block->fpf &= ~FPF_BPBC;
4252 vcpu->arch.sie_block->fpf |= kvm_run->s.regs.bpbc ? FPF_BPBC : 0;
4278 memcpy(&vcpu->arch.sie_block->gcr, &kvm_run->s.regs.crs, 128);
4284 vcpu->arch.sie_block->ckc = kvm_run->s.regs.ckc;
4314 vcpu->arch.sie_block->gpsw.mask &= ~PSW_MASK_CC;
4315 vcpu->arch.sie_block->gpsw.mask |= kvm_run->psw_mask &
4326 kvm_run->s.regs.todpr = vcpu->arch.sie_block->todpr;
4327 kvm_run->s.regs.pp = vcpu->arch.sie_block->pp;
4328 kvm_run->s.regs.gbea = vcpu->arch.sie_block->gbea;
4329 kvm_run->s.regs.bpbc = (vcpu->arch.sie_block->fpf & FPF_BPBC) == FPF_BPBC;
4350 kvm_run->psw_mask = vcpu->arch.sie_block->gpsw.mask;
4351 kvm_run->psw_addr = vcpu->arch.sie_block->gpsw.addr;
4353 memcpy(&kvm_run->s.regs.crs, &vcpu->arch.sie_block->gcr, 128);
4355 kvm_run->s.regs.ckc = vcpu->arch.sie_block->ckc;
4476 &vcpu->arch.sie_block->gpsw, 16);
4482 &vcpu->arch.sie_block->todpr, 4);
4486 clkcomp = vcpu->arch.sie_block->ckc >> 8;
4492 &vcpu->arch.sie_block->gcr, 128);
4579 vcpu->arch.sie_block->gpsw.mask &= ~PSW_INT_MASK;
4675 if (mop->size + mop->sida_offset > sida_size(vcpu->arch.sie_block))
4682 if (copy_to_user(uaddr, (void *)(sida_origin(vcpu->arch.sie_block) +
4688 if (copy_from_user((void *)(sida_origin(vcpu->arch.sie_block) +
4983 vmf->page = virt_to_page(vcpu->arch.sie_block);