From patchwork Sun Nov 2 08:10:10 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: 5211221 X-Patchwork-Delegate: bhelgaas@google.com Return-Path: X-Original-To: patchwork-linux-pci@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 98AC0C11AC for ; Sun, 2 Nov 2014 08:10:50 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 50C03201C7 for ; Sun, 2 Nov 2014 08:10:49 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 7283A201BB for ; Sun, 2 Nov 2014 08:10:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751379AbaKBIKr (ORCPT ); Sun, 2 Nov 2014 03:10:47 -0500 Received: from numascale.com ([213.162.240.84]:59356 "EHLO numascale.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751277AbaKBIKq (ORCPT ); Sun, 2 Nov 2014 03:10:46 -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=8ZxZI8+IygZjTY/6unk5E19T6kW62vbNd7esC4xfI/M=; b=JD3/XbTqn6bJSUZW6T+okI1xnCK0s3fezJNrvn5psBOi0fr9i4X1EAxEWWHB6LhRW8ErqGOIzkCl6TXsvPWTuwV6scp3lekwpbB+8CSawmueu6sKuxVpoku9IxmLoRJzeGiDHT/fHW6G4EPTc1wnDSzB5+jf2Akkq3T7ZLVM460=; Received: from [115.42.131.38] (port=59192 helo=meiko.int.numascale.com) by cpanel21.proisp.no with esmtpsa (UNKNOWN:AES128-SHA256:128) (Exim 4.82) (envelope-from ) id 1XkqFF-003GZW-7d; Sun, 02 Nov 2014 09:10:41 +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 v3 2/5] Numachip: Elide self-IPI ICR polling Date: Sun, 2 Nov 2014 16:10:10 +0800 Message-Id: <1414915813-2462-2-git-send-email-daniel@numascale.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1414915813-2462-1-git-send-email-daniel@numascale.com> References: <1414915813-2462-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 --- arch/x86/kernel/apic/apic_numachip.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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)