Re: [PATCH 2/3] KVM: x86: really disarm lapic timer when clearing TMICT

From: Wanpeng Li
Date: Fri Oct 06 2017 - 20:30:46 EST


2017-10-07 1:25 GMT+08:00 Radim KrÄmÃÅ <rkrcmar@xxxxxxxxxx>:
> preemption timer only looks at tscdeadline and could inject already
> disarmed timer.
>
> Signed-off-by: Radim KrÄmÃÅ <rkrcmar@xxxxxxxxxx>

Reviewed-by: Wanpeng Li <wanpeng.li@xxxxxxxxxxx>

> ---
> arch/x86/kvm/lapic.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/arch/x86/kvm/lapic.c b/arch/x86/kvm/lapic.c
> index 39c1ae11ce1d..96ade848ae0b 100644
> --- a/arch/x86/kvm/lapic.c
> +++ b/arch/x86/kvm/lapic.c
> @@ -1489,8 +1489,10 @@ static bool set_target_expiration(struct kvm_lapic *apic)
> apic->lapic_timer.period = (u64)kvm_lapic_get_reg(apic, APIC_TMICT)
> * APIC_BUS_CYCLE_NS * apic->divide_count;
>
> - if (!apic->lapic_timer.period)
> + if (!apic->lapic_timer.period) {
> + apic->lapic_timer.tscdeadline = 0;
> return false;
> + }
>
> limit_periodic_timer_frequency(apic);
>
> --
> 2.14.2
>