mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
Revert "Revert "ANDROID: KVM: arm64: Allow userspace to receive SHARE and UNSHARE notifications""
This reverts commit 68c3df5b39.
Bug: 233587962
Signed-off-by: Will Deacon <willdeacon@google.com>
Change-Id: Id5caa080b3b271e3e84e583ceb6d18b0823c52c7
This commit is contained in:
@@ -65,7 +65,8 @@ static DEFINE_PER_CPU(unsigned char, kvm_arm_hardware_enabled);
|
||||
DEFINE_STATIC_KEY_FALSE(userspace_irqchip_in_use);
|
||||
|
||||
/* KVM "vendor" hypercalls which may be forwarded to userspace on request. */
|
||||
#define KVM_EXIT_HYPERCALL_VALID_MASK (0)
|
||||
#define KVM_EXIT_HYPERCALL_VALID_MASK (BIT(ARM_SMCCC_KVM_FUNC_MEM_SHARE) | \
|
||||
BIT(ARM_SMCCC_KVM_FUNC_MEM_UNSHARE))
|
||||
|
||||
int kvm_arch_vcpu_should_kick(struct kvm_vcpu *vcpu)
|
||||
{
|
||||
|
||||
@@ -163,6 +163,14 @@ int kvm_hvc_call_handler(struct kvm_vcpu *vcpu)
|
||||
case ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID:
|
||||
kvm_ptp_get_time(vcpu, val);
|
||||
break;
|
||||
case ARM_SMCCC_VENDOR_HYP_KVM_MEM_SHARE_FUNC_ID:
|
||||
if (!kvm_vcpu_exit_hcall(vcpu, ARM_SMCCC_KVM_FUNC_MEM_SHARE, 3))
|
||||
return 0;
|
||||
break;
|
||||
case ARM_SMCCC_VENDOR_HYP_KVM_MEM_UNSHARE_FUNC_ID:
|
||||
if (!kvm_vcpu_exit_hcall(vcpu, ARM_SMCCC_KVM_FUNC_MEM_UNSHARE, 3))
|
||||
return 0;
|
||||
break;
|
||||
case ARM_SMCCC_VENDOR_HYP_KVM_MMIO_GUARD_MAP_FUNC_ID:
|
||||
if (kvm_vm_is_protected(vcpu->kvm) && !topup_hyp_memcache(vcpu))
|
||||
val[0] = SMCCC_RET_SUCCESS;
|
||||
|
||||
Reference in New Issue
Block a user