Re: [RFCv2 35/37] KVM: s390: protvirt: Mask PSW interrupt bits for interception 104 and 112

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 06.02.20 11:10, Cornelia Huck wrote:
> On Mon,  3 Feb 2020 08:19:55 -0500
> Christian Borntraeger <borntraeger@xxxxxxxxxx> wrote:
> 
>> From: Janosch Frank <frankja@xxxxxxxxxxxxx>
>>
>> We're not allowed to inject interrupts on those intercept codes. As our
> 
> Spell out what these codes actually are?

We're not allowed to inject interrupts on intercepts that leave the guest state
in an "in-beetween" state where the next SIE entry will do a continuation.
Namely secure instruction interception and secure prefix interception...

>> @@ -4082,10 +4083,15 @@ static int __vcpu_run(struct kvm_vcpu *vcpu)
>>  		}
>>  		exit_reason = sie64a(vcpu->arch.sie_block,
>>  				     vcpu->run->s.regs.gprs);
>> +		/* This will likely be moved into a new function. */
> 
> Hm?

Unless you have a good naming for such function, will remove this comment.
I tried that but I the end result was not better or worse.

> 
>>  		if (kvm_s390_pv_is_protected(vcpu->kvm)) {
>>  			memcpy(vcpu->run->s.regs.gprs,
>>  			       sie_page->pv_grregs,
>>  			       sizeof(sie_page->pv_grregs));
>> +			if (vcpu->arch.sie_block->icptcode == ICPT_PV_INSTR ||
>> +			    vcpu->arch.sie_block->icptcode == ICPT_PV_PREF) {
>> +				vcpu->arch.sie_block->gpsw.mask &= ~PSW_INT_MASK;
>> +			}
>>  		}
>>  		local_irq_disable();
>>  		__enable_cpu_timer_accounting(vcpu);
> 




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux