]> rtime.felk.cvut.cz Git - zynq/linux.git/blobdiff - arch/x86/kvm/lapic.c
Apply preempt_rt patch-4.9-rt1.patch.xz
[zynq/linux.git] / arch / x86 / kvm / lapic.c
index 23b99f3053825d40c6d697cf8c58dfb4ae941208..d47f204a0fbe73277b91fadbdb4d8a6df07d53d9 100644 (file)
@@ -138,7 +138,7 @@ static inline bool kvm_apic_map_get_logical_dest(struct kvm_apic_map *map,
                *mask = dest_id & 0xff;
                return true;
        case KVM_APIC_MODE_XAPIC_CLUSTER:
-               *cluster = map->xapic_cluster_map[dest_id >> 4];
+               *cluster = map->xapic_cluster_map[(dest_id >> 4) & 0xf];
                *mask = dest_id & 0xf;
                return true;
        default:
@@ -1939,6 +1939,7 @@ int kvm_create_lapic(struct kvm_vcpu *vcpu)
        hrtimer_init(&apic->lapic_timer.timer, CLOCK_MONOTONIC,
                     HRTIMER_MODE_ABS_PINNED);
        apic->lapic_timer.timer.function = apic_timer_fn;
+       apic->lapic_timer.timer.irqsafe = 1;
 
        /*
         * APIC is created enabled. This will prevent kvm_lapic_set_base from