[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20be1e98-deec-ea00-32e1-251781a35f83@redhat.com>
Date: Mon, 3 Jul 2017 09:30:19 +0200
From: Paolo Bonzini <pbonzini@...hat.com>
To: Wanpeng Li <kernellwp@...il.com>
Cc: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
kvm <kvm@...r.kernel.org>, Radim Krcmar <rkrcmar@...hat.com>,
Wanpeng Li <wanpeng.li@...mail.com>
Subject: Re: [PATCH 3/3] KVM: LAPIC: Fix lapic timer injection delay
On 02/07/2017 03:56, Wanpeng Li wrote:
>>> - if (!apic_lvtt_period(apic) && atomic_read(&ktimer->pending))
>>> + if (!apic_lvtt_period(apic) && (r || atomic_read(&ktimer->pending))) {
>>> + if (r)
>>> + apic_timer_expired(apic);
>>> return false;
>>> + }
>>
>> This logic is not the same as in my v4
>> http://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1434040.html
>> . You return false for the expired timer and actually it will switch
>> to sw timer.
>
> Ah, I miss read it, the rebase is correct.
Yeah, I'm not entirely satisfied with it but it's working: start_sw
timer will see ktimer->pending and do nothing.
But thinking more about it, maybe the "if (r)" can be omitted
completely? We need to benchmark it but it can be done.
Paolo
Powered by blists - more mailing lists