From patchwork Tue Nov 4 08:29:42 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel J Blueman X-Patchwork-Id: 5223721 X-Patchwork-Delegate: bhelgaas@google.com Return-Path: X-Original-To: patchwork-linux-pci@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 4473E9F349 for ; Tue, 4 Nov 2014 08:33:54 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id D4CDC2017D for ; Tue, 4 Nov 2014 08:33:52 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 0847A20136 for ; Tue, 4 Nov 2014 08:33:52 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752561AbaKDIbQ (ORCPT ); Tue, 4 Nov 2014 03:31:16 -0500 Received: from numascale.com ([213.162.240.84]:57480 "EHLO numascale.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752224AbaKDIbM (ORCPT ); Tue, 4 Nov 2014 03:31:12 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=numascale.com; s=default; h=References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From; bh=J9ytxd+fXvPn92nGOfYw1zCvA3WlemHxCMHAuK0Q1c4=; b=DpF5vFKkiC3eRLVKRSu1/Uc/tGfy8936KdqvCCpeX5asEwIpi1V8UIlzuabqv85FbPvMGuF5vh9tQj/LQMqANcv02ATg2HxDC+rMQsgTIR46zxLBbc5EaHdzuOkPK2D60mUC/ORhOlDufPTUQX/2zcyaFQ2VPJuU6kOvXGZKnKs=; Received: from [115.42.131.38] (port=34755 helo=meiko.int.numascale.com) by cpanel21.proisp.no with esmtpsa (UNKNOWN:AES128-SHA256:128) (Exim 4.82) (envelope-from ) id 1XlZW6-001OoX-Om; Tue, 04 Nov 2014 09:31:07 +0100 From: Daniel J Blueman To: Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , Bjorn Helgaas Cc: Daniel J Blueman , x86@kernel.org, linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org, Steffen Persvold Subject: [PATCH v4 2/4] Numachip: Elide self-IPI ICR polling Date: Tue, 4 Nov 2014 16:29:42 +0800 Message-Id: <1415089784-28779-2-git-send-email-daniel@numascale.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1415089784-28779-1-git-send-email-daniel@numascale.com> References: <1415089784-28779-1-git-send-email-daniel@numascale.com> X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cpanel21.proisp.no X-AntiAbuse: Original Domain - vger.kernel.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - numascale.com X-Get-Message-Sender-Via: cpanel21.proisp.no: authenticated_id: daniel@numascale.com X-Source: X-Source-Args: X-Source-Dir: Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org X-Spam-Status: No, score=-7.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,RP_MATCHES_RCVD,T_DKIM_INVALID,UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP The default self-IPI path polls the ICR to delay sending the IPI until there is no IPI in progress. This is redundant on x86-86 APICs, since IPIs are queued. See the AMD64 Architecture Programmer's Manual, vol 2, p525. Signed-off-by: Daniel J Blueman --- apic_numachip.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/kernel/apic/apic_numachip.c b/arch/x86/kernel/apic/apic_numachip.c index 81d70ba..bd083c0 100644 --- a/arch/x86/kernel/apic/apic_numachip.c +++ b/arch/x86/kernel/apic/apic_numachip.c @@ -145,7 +145,7 @@ static void numachip_send_IPI_all(int vector) static void numachip_send_IPI_self(int vector) { - __default_send_IPI_shortcut(APIC_DEST_SELF, vector, APIC_DEST_PHYSICAL); + apic_write(APIC_SELF_IPI, vector); } static int __init numachip_probe(void)