summaryrefslogtreecommitdiffstats
path: root/arch/arm64/include/uapi
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2022-08-19 05:43:53 -0400
committerPaolo Bonzini <pbonzini@redhat.com>2022-08-19 05:43:53 -0400
commit959d6c4ae238b28a163b1b3741fae05391227ad9 (patch)
treeefab9698a2e389db32786e244dfa2b2f702220ff /arch/arm64/include/uapi
parenteceb6e1d530046f964b0e371d4fad02a5b6b42d1 (diff)
parentb10d86fb8e46cc812171728bcd326df2f34e9ed5 (diff)
downloadlinux-stable-959d6c4ae238b28a163b1b3741fae05391227ad9.tar.gz
linux-stable-959d6c4ae238b28a163b1b3741fae05391227ad9.tar.bz2
linux-stable-959d6c4ae238b28a163b1b3741fae05391227ad9.zip
Merge tag 'kvmarm-fixes-6.0-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm into HEAD
KVM/arm64 fixes for 6.0, take #1 - Fix unexpected sign extension of KVM_ARM_DEVICE_ID_MASK - Tidy-up handling of AArch32 on asymmetric systems
Diffstat (limited to 'arch/arm64/include/uapi')
-rw-r--r--arch/arm64/include/uapi/asm/kvm.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/arm64/include/uapi/asm/kvm.h b/arch/arm64/include/uapi/asm/kvm.h
index 3bb134355874..316917b98707 100644
--- a/arch/arm64/include/uapi/asm/kvm.h
+++ b/arch/arm64/include/uapi/asm/kvm.h
@@ -75,9 +75,11 @@ struct kvm_regs {
/* KVM_ARM_SET_DEVICE_ADDR ioctl id encoding */
#define KVM_ARM_DEVICE_TYPE_SHIFT 0
-#define KVM_ARM_DEVICE_TYPE_MASK (0xffff << KVM_ARM_DEVICE_TYPE_SHIFT)
+#define KVM_ARM_DEVICE_TYPE_MASK GENMASK(KVM_ARM_DEVICE_TYPE_SHIFT + 15, \
+ KVM_ARM_DEVICE_TYPE_SHIFT)
#define KVM_ARM_DEVICE_ID_SHIFT 16
-#define KVM_ARM_DEVICE_ID_MASK (0xffff << KVM_ARM_DEVICE_ID_SHIFT)
+#define KVM_ARM_DEVICE_ID_MASK GENMASK(KVM_ARM_DEVICE_ID_SHIFT + 15, \
+ KVM_ARM_DEVICE_ID_SHIFT)
/* Supported device IDs */
#define KVM_ARM_DEVICE_VGIC_V2 0