Commit e48407ff authored by Marc Zyngier's avatar Marc Zyngier
Browse files

KVM: arm64: Rely on index_to_param() for size checks on userspace access



index_to_param() already checks that we use 64bit accesses for all
registers accessed from userspace.

However, we have extra checks in other places (such as index_to_params),
which is pretty confusing. Get rid off these redundant checks.

Reviewed-by: default avatarReiji Watanabe <reijiw@google.com>
Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
parent ba23aec9
Loading
Loading
Loading
Loading
+0 −6
Original line number Original line Diff line number Diff line
@@ -2871,9 +2871,6 @@ int kvm_arm_sys_reg_get_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg
	if ((reg->id & KVM_REG_ARM_COPROC_MASK) == KVM_REG_ARM_DEMUX)
	if ((reg->id & KVM_REG_ARM_COPROC_MASK) == KVM_REG_ARM_DEMUX)
		return demux_c15_get(reg->id, uaddr);
		return demux_c15_get(reg->id, uaddr);


	if (KVM_REG_SIZE(reg->id) != sizeof(__u64))
		return -ENOENT;

	err = get_invariant_sys_reg(reg->id, uaddr);
	err = get_invariant_sys_reg(reg->id, uaddr);
	if (err != -ENOENT)
	if (err != -ENOENT)
		return err;
		return err;
@@ -2906,9 +2903,6 @@ int kvm_arm_sys_reg_set_reg(struct kvm_vcpu *vcpu, const struct kvm_one_reg *reg
	if ((reg->id & KVM_REG_ARM_COPROC_MASK) == KVM_REG_ARM_DEMUX)
	if ((reg->id & KVM_REG_ARM_COPROC_MASK) == KVM_REG_ARM_DEMUX)
		return demux_c15_set(reg->id, uaddr);
		return demux_c15_set(reg->id, uaddr);


	if (KVM_REG_SIZE(reg->id) != sizeof(__u64))
		return -ENOENT;

	err = set_invariant_sys_reg(reg->id, uaddr);
	err = set_invariant_sys_reg(reg->id, uaddr);
	if (err != -ENOENT)
	if (err != -ENOENT)
		return err;
		return err;