]> www.infradead.org Git - users/jedix/linux-maple.git/commit
KVM: x86: Check that the high 32bits are clear in kvm_arch_vcpu_ioctl_run()
authorDan Carpenter <dan.carpenter@linaro.org>
Mon, 24 Mar 2025 10:51:28 +0000 (13:51 +0300)
committerSean Christopherson <seanjc@google.com>
Thu, 24 Apr 2025 18:18:02 +0000 (11:18 -0700)
commita476cadf8ef1fbb9780581316f0199dfc62a81f2
tree1143124a1b769ce217b9f09c829a733b9432d6b6
parenta2620f8932fa9fdabc3d78ed6efb004ca409019f
KVM: x86: Check that the high 32bits are clear in kvm_arch_vcpu_ioctl_run()

The "kvm_run->kvm_valid_regs" and "kvm_run->kvm_dirty_regs" variables are
u64 type.  We are only using the lowest 3 bits but we want to ensure that
the users are not passing invalid bits so that we can use the remaining
bits in the future.

However "sync_valid_fields" and kvm_sync_valid_fields() are u32 type so
the check only ensures that the lower 32 bits are clear.  Fix this by
changing the types to u64.

Fixes: 74c1807f6c4f ("KVM: x86: block KVM_CAP_SYNC_REGS if guest state is protected")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
Link: https://lore.kernel.org/r/ec25aad1-113e-4c6e-8941-43d432251398@stanley.mountain
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/x86.c