diff options
Diffstat (limited to 'arch/arm64/kvm/arm.c')
| -rw-r--r-- | arch/arm64/kvm/arm.c | 7 | 
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c index f21d1b7f20f8..870953b4a8a7 100644 --- a/arch/arm64/kvm/arm.c +++ b/arch/arm64/kvm/arm.c @@ -642,6 +642,7 @@ nommu:  		vcpu->arch.hcr_el2 |= HCR_TWI;  	vcpu_set_pauth_traps(vcpu); +	kvm_vcpu_load_fgt(vcpu);  	if (is_protected_kvm_enabled()) {  		kvm_call_hyp_nvhe(__pkvm_vcpu_load, @@ -1794,6 +1795,9 @@ long kvm_arch_vcpu_ioctl(struct file *filp,  	case KVM_GET_VCPU_EVENTS: {  		struct kvm_vcpu_events events; +		if (!kvm_vcpu_initialized(vcpu)) +			return -ENOEXEC; +  		if (kvm_arm_vcpu_get_events(vcpu, &events))  			return -EINVAL; @@ -1805,6 +1809,9 @@ long kvm_arch_vcpu_ioctl(struct file *filp,  	case KVM_SET_VCPU_EVENTS: {  		struct kvm_vcpu_events events; +		if (!kvm_vcpu_initialized(vcpu)) +			return -ENOEXEC; +  		if (copy_from_user(&events, argp, sizeof(events)))  			return -EFAULT;  | 
