diff options
Diffstat (limited to 'src/arch')
-rw-r--r-- | src/arch/arm/kvm/gic.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/arch/arm/kvm/gic.cc b/src/arch/arm/kvm/gic.cc index afb0f076d..12f9db5bc 100644 --- a/src/arch/arm/kvm/gic.cc +++ b/src/arch/arm/kvm/gic.cc @@ -115,8 +115,8 @@ KvmKernelGicV2::getGicReg(unsigned group, unsigned vcpu, unsigned offset) uint64_t reg; assert(vcpu <= KVM_ARM_IRQ_VCPU_MASK); - const uint32_t attr( - (vcpu << KVM_DEV_ARM_VGIC_CPUID_SHIFT) | + const uint64_t attr( + ((uint64_t)vcpu << KVM_DEV_ARM_VGIC_CPUID_SHIFT) | (offset << KVM_DEV_ARM_VGIC_OFFSET_SHIFT)); kdev.getAttrPtr(group, attr, ®); @@ -130,8 +130,8 @@ KvmKernelGicV2::setGicReg(unsigned group, unsigned vcpu, unsigned offset, uint64_t reg = value; assert(vcpu <= KVM_ARM_IRQ_VCPU_MASK); - const uint32_t attr( - (vcpu << KVM_DEV_ARM_VGIC_CPUID_SHIFT) | + const uint64_t attr( + ((uint64_t)vcpu << KVM_DEV_ARM_VGIC_CPUID_SHIFT) | (offset << KVM_DEV_ARM_VGIC_OFFSET_SHIFT)); kdev.setAttrPtr(group, attr, ®); |