Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1645045ybz; Thu, 23 Apr 2020 02:59:33 -0700 (PDT) X-Google-Smtp-Source: APiQypL3IAfyvuePMZQoM56kHhtjFNXqwm+cQgqEyw2WkvCC5hr7pCpUTWuKElNg3gk1TdYql8fM X-Received: by 2002:a17:906:4003:: with SMTP id v3mr1914258ejj.144.1587635973407; Thu, 23 Apr 2020 02:59:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587635973; cv=none; d=google.com; s=arc-20160816; b=JmPL0N+eeGTf6/RNuiWfStamyOHKCVYPQM7ldvXmBgf1nQhk9vJ8M5rfvoYZOnle+M zGOREoNTgLCkgVWiEn5vbLaZVHHqeXWQZzFb0ai5f2oPaVUHOCzPKPwXi2f4V6Or2W13 WXziEhCynqxaCOZ9CGkiMP/sAjEqmYm6qYMykmkZ0cYeSWMLUmIlZEv4iF081fxUy3bQ SaJrt8dIhejG2+xnk3kZThLLO+PURA03e2mR6RSjO6HYx8bBq83DQov6rIuhtPBwD5Pw x47J/bpXqf74SJPJpL9aNRPjyWNBKP589t6mO0cbTj6bhoWgKZfyxgfRZlNguAd1Lzol 1vRQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=zpVZ9ErILW2s2TLRWRMEyXqH+tdaxrwrClR4yhCM63A=; b=RGmJF9QYs4/vfZw9kIjaNS8VSqI3rOWCE5I6N8LRMzikGDBYTYMwZq/ZOqyQD5FhZk aOOxY8bXox269eVGJamMNKYJB52xvCI4Y/H+0CG3jGuCnbmWiI/844yuEeXXYf0zEuxe AzWi5Le8i1AQvRxQbW5B0eVh3OPKPwOKJcn0+L6o7WaP1F/XGTA1XsNE+ZBGx1/Q3hXv ztA0am3MD4i8YYEOkAfhBZAblCFQc7PC6T1t3rm7QJO+h8gNoTvtKCPb7L2XdnVsvTsW j36JSsyoPyH4DzpBXZ2g5AtMllKVsbV8APcFNhzif8IxrOIWkl5wqmwGbkgAr5wDPSYz ju5A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="f+tlLNe/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id nm2si906367ejb.243.2020.04.23.02.59.10; Thu, 23 Apr 2020 02:59:33 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="f+tlLNe/"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726959AbgDWJ5E (ORCPT + 99 others); Thu, 23 Apr 2020 05:57:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57860 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726364AbgDWJ5D (ORCPT ); Thu, 23 Apr 2020 05:57:03 -0400 Received: from mail-ot1-x344.google.com (mail-ot1-x344.google.com [IPv6:2607:f8b0:4864:20::344]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C732AC03C1AF; Thu, 23 Apr 2020 02:57:02 -0700 (PDT) Received: by mail-ot1-x344.google.com with SMTP id b13so5037529oti.3; Thu, 23 Apr 2020 02:57:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=zpVZ9ErILW2s2TLRWRMEyXqH+tdaxrwrClR4yhCM63A=; b=f+tlLNe/7c5lNj49h+TjMXRdhQ6FJTks90I9bWP/RWG3yICYZkFf5leNgGYdDJpHrP et9KkypWu5hmk1DznoYL+UTLXVCeH6bFPyApKyEqvRpcn46PX7qtoLFDCDkUXgsfvO9E WioFpPjShvrB6p/oqBw5KzFpjWBIIoJGbu/S4Kq2TG3avvjgypfRZheaV/BDf/HAREQH JkhrQ7AJEm00NTAkktuoo11RTXqICuWTyLv+wZZgFc2q1MFs5ULW/DZUbxJnp8+utvJK 2eabLgfMUM0jsPtzrefE/XbSRz1gFFDE6/VMbdobwOptxQlk2q2WWYOsmnGX7XpjjmRC Q8Qg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=zpVZ9ErILW2s2TLRWRMEyXqH+tdaxrwrClR4yhCM63A=; b=UohfVu1mTTUTJMSm8ja00PK715L41pv9KwjDc2784C/aCcvw+RcAEJUXFEtIBXJBU7 cbQQcwrCSnICKpPZWjn4tZOeNOY8ek5QCTQgoPmFQJU5t/hl4g1ECc+LpIvCqei2fK2b 3XA10z+Cy2s+Av9NKmw0myNgSckutmOvHIoaWM/HZkt/3eF3RNQmmNLGszPTUgHJ6yJE Cz+2zXohFDhiNfYt2OOhF8I8LH2kUlYirPoK9MkIXHNkdqvc6GBKvNdCTZaZWdefoQgl tqDiRSS1jj2W+sBhpuiGd7lI1jivQnH9x54WBlhoHHIOIANASpE7G70mfkIJQCZsiPyj YhHA== X-Gm-Message-State: AGi0PuYIwuciP8ZMBLaRgWlBPAwfQuQP0woWjjVVFNewvwKJ14pS9K+v wlsztFY6pROJeuoFCjW6tTSBhwu0C1TqloJt0cU= X-Received: by 2002:aca:2801:: with SMTP id 1mr2200732oix.141.1587635822199; Thu, 23 Apr 2020 02:57:02 -0700 (PDT) MIME-Version: 1.0 References: <1587632507-18997-1-git-send-email-wanpengli@tencent.com> <1587632507-18997-6-git-send-email-wanpengli@tencent.com> <99d81fa5-dc37-b22f-be1e-4aa0449e6c26@redhat.com> In-Reply-To: <99d81fa5-dc37-b22f-be1e-4aa0449e6c26@redhat.com> From: Wanpeng Li Date: Thu, 23 Apr 2020 17:56:51 +0800 Message-ID: Subject: Re: [PATCH v2 5/5] KVM: VMX: Handle preemption timer fastpath To: Paolo Bonzini Cc: LKML , kvm , Sean Christopherson , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel , Haiwei Li Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 23 Apr 2020 at 17:40, Paolo Bonzini wrote: > > On 23/04/20 11:01, Wanpeng Li wrote: > > +bool kvm_lapic_expired_hv_timer_fast(struct kvm_vcpu *vcpu) > > +{ > > + struct kvm_lapic *apic = vcpu->arch.apic; > > + struct kvm_timer *ktimer = &apic->lapic_timer; > > + > > + if (!apic_lvtt_tscdeadline(apic) || > > + !ktimer->hv_timer_in_use || > > + atomic_read(&ktimer->pending)) > > + return 0; > > + > > + WARN_ON(swait_active(&vcpu->wq)); > > + cancel_hv_timer(apic); > > + > > + ktimer->expired_tscdeadline = ktimer->tscdeadline; > > + kvm_inject_apic_timer_irqs_fast(vcpu); > > + > > + return 1; > > +} > > +EXPORT_SYMBOL_GPL(kvm_lapic_expired_hv_timer_fast); > > Please re-evaluate if this is needed (or which parts are needed) after > cleaning up patch 4. Anyway again---this is already better, I don't > like the duplicated code but at least I can understand what's going on. Except the apic_lvtt_tscdeadline(apic) check, others are duplicated, what do you think about apic_lvtt_tscdeadline(apic) check? Wanpeng