Received: by 2002:a25:7ec1:0:0:0:0:0 with SMTP id z184csp171093ybc; Mon, 18 Nov 2019 22:42:38 -0800 (PST) X-Google-Smtp-Source: APXvYqxPuCtYVQQHJSvhdlSmmU3etCy7LHG82KM96B+CfC/4VjXbYkKVF3v7pTExsiYWDk4BVllj X-Received: by 2002:a17:906:3ec2:: with SMTP id d2mr33575334ejj.251.1574145758761; Mon, 18 Nov 2019 22:42:38 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1574145758; cv=none; d=google.com; s=arc-20160816; b=Z+dryXAPxxdS7GGjb6P7x+8pRD+SHsMHLZBDu+4LgjNPASKAbn4UakMq7rISLBoj5B nfewnpemBF65xz42TCkakzz6SW5f/KGIYvZNh4WN7Q9TUL9myqwh0wlBdjcPX1uOvxvA fgv8HjZSRRYCcgq/QWdp3kIBIqUkazuTJcl2GOl39GXsbvH6zb5YMulNoe8z1E4EOsw6 rW2Q5wSNnyAm8IoN65dFT/Ysx9sVjQJQfmhVEsf0jfDPzPMgBkjnmQrMCosCId7WtlpL xGc000hQPP6UsiKt4PtZTkjL8oY11t38UaMfa7YQjEjnQPikdy5LKGcJQKtN4T2/+1wp /oQQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature; bh=Yo5NqpRNVc9ZCV4HkeJ+w2OSLgctRXbOy2yPUqbQZMs=; b=j/7E/H1C52WlPpCmS7f4VBw6mOpQRleR5ivyIpoEo57HQN7yWvkmGWWCCFlaHYVpI3 pcfGRQrdrHx+SIsNMRTP/ktTl1/ohbjAFL2lweyhfZ0gDQBleY91zrijh/2z9FKcHkMM lGlWS4T2DKLcgJxN2m7UDVwGJ2vur/8TYom8JTjMtLMNYZPxsnUZTedsdGXG+HcLpoIm jYTmt3fY9aQoGpotXZ5srLx68I6GfBuhyHAn3ep2sBY68Iw9eWW5ZGPnhxdv/npVw5OG MBDLMFl0g/EA5meTQHbUBBrP7oLSbDVASgtKhjNjv1vp1fwutalYHedOy80rfSIRbkMB 4yvQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ARYxvPe4; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 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. [209.132.180.67]) by mx.google.com with ESMTP id s13si14696124edt.427.2019.11.18.22.42.13; Mon, 18 Nov 2019 22:42:38 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ARYxvPe4; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 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 S1727740AbfKSGic (ORCPT + 99 others); Tue, 19 Nov 2019 01:38:32 -0500 Received: from mail-pf1-f195.google.com ([209.85.210.195]:45407 "EHLO mail-pf1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726023AbfKSGib (ORCPT ); Tue, 19 Nov 2019 01:38:31 -0500 Received: by mail-pf1-f195.google.com with SMTP id z4so11628357pfn.12; Mon, 18 Nov 2019 22:38:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=Yo5NqpRNVc9ZCV4HkeJ+w2OSLgctRXbOy2yPUqbQZMs=; b=ARYxvPe47zKdIYN64R1iqFts1fP2tj8/oIVw8RJxb+pgK0CIbk8IdUD9bNFlf3TzHZ Fjepjg7LgCSbTO24YXSfE9D/GMjvn7jIfxU7ZI09lZP/pNMm3fSFubuMwBCGq9TIeMqi W3/EuDw9qM1kUo53C9Nab7h6iwl0jI5OoqZm5lzxoDCg/cGwpnwkz/3eRemf05f8Yn5N H10wMJZtkiDbjnbQb/j+89WC2aaMizfr1Tzb5WNogdNGpuAjZXPurLelOjZDSn+CCvbG 71hPvlkSBiAXKxZVvOfw/zcKLH1Vu+v8V0Hg8p7JeMvyTqm7nWAo6CqG5qHYgkmLYeBp E3Sw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=Yo5NqpRNVc9ZCV4HkeJ+w2OSLgctRXbOy2yPUqbQZMs=; b=asFoe54WNk7mzIUbmVXwHWYkBBpATXU3+QX/yuA7YD0nmySWG5ZvmpRzP4NfFMvTWI TR3NctpUVu9kwQdbnCnxREYiUqjssnUTltLMqec3kESwwsf6NiXm+CLNWh7QjI9rcjF3 YEM86QccAAWdgSZC4F8hc01v/zBmCZ9UDE+PTVKzUKjV/21iGtpVpsexscT5Ysrb71UA gITdn/jziBL5aWWhYrMYERTBIKX3JkZQuS9ifj3HXwOOnCj+TD0JzunD2evBxD5fb5Wl 5UCinNB7GpKpYWKcbZol9v2FMzue5iNH9id1TJPR70gKd5iVOyEeeeC/Z4YdWOsLixxS u3jg== X-Gm-Message-State: APjAAAUoWRqDHculCheOYAExY5RWeZ/q8smsE5at95bFuTm/H4gn97Bu s494YdMBAOKviIt5bIUG0OhMS5O0 X-Received: by 2002:a62:7643:: with SMTP id r64mr3677392pfc.191.1574145510728; Mon, 18 Nov 2019 22:38:30 -0800 (PST) Received: from localhost.localdomain ([203.205.141.123]) by smtp.googlemail.com with ESMTPSA id y17sm8307055pfl.92.2019.11.18.22.38.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 18 Nov 2019 22:38:30 -0800 (PST) From: Wanpeng Li X-Google-Original-From: Wanpeng Li To: linux-kernel@vger.kernel.org, kvm@vger.kernel.org Cc: Paolo Bonzini , =?UTF-8?q?Radim=20Kr=C4=8Dm=C3=A1=C5=99?= , Sean Christopherson , Vitaly Kuznetsov , Wanpeng Li , Jim Mattson , Joerg Roedel Subject: [PATCH v2 2/2] KVM: LAPIC: micro-optimize fixed mode ipi delivery Date: Tue, 19 Nov 2019 14:38:25 +0800 Message-Id: <1574145505-12273-1-git-send-email-wanpengli@tencent.com> X-Mailer: git-send-email 2.7.4 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Wanpeng Li This patch optimizes redundancy logic before fixed mode ipi is delivered in the fast path, broadcast handling needs to go slow path, so the delivery mode repair can be delayed to before slow path. Signed-off-by: Wanpeng Li --- v1 -> v2: * don't touch the irq->shorthand check arch/x86/kvm/irq_comm.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/x86/kvm/irq_comm.c b/arch/x86/kvm/irq_comm.c index 8ecd48d..aa88156 100644 --- a/arch/x86/kvm/irq_comm.c +++ b/arch/x86/kvm/irq_comm.c @@ -52,15 +52,15 @@ int kvm_irq_delivery_to_apic(struct kvm *kvm, struct kvm_lapic *src, unsigned long dest_vcpu_bitmap[BITS_TO_LONGS(KVM_MAX_VCPUS)]; unsigned int dest_vcpus = 0; + if (kvm_irq_delivery_to_apic_fast(kvm, src, irq, &r, dest_map)) + return r; + if (irq->dest_mode == 0 && irq->dest_id == 0xff && kvm_lowest_prio_delivery(irq)) { printk(KERN_INFO "kvm: apic: phys broadcast and lowest prio\n"); irq->delivery_mode = APIC_DM_FIXED; } - if (kvm_irq_delivery_to_apic_fast(kvm, src, irq, &r, dest_map)) - return r; - memset(dest_vcpu_bitmap, 0, sizeof(dest_vcpu_bitmap)); kvm_for_each_vcpu(i, vcpu, kvm) { -- 2.7.4