Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp1348657imm; Sat, 4 Aug 2018 01:24:40 -0700 (PDT) X-Google-Smtp-Source: AAOMgpdHOwts7pz6fr/Wij4KdBk4kRZtvPXdDDngVbWubKMKLZXZa3mM6k5nLjGjNHJziOEpjpWG X-Received: by 2002:a63:4d06:: with SMTP id a6-v6mr6801155pgb.408.1533371080055; Sat, 04 Aug 2018 01:24:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533371080; cv=none; d=google.com; s=arc-20160816; b=kKz+dp0jOxzAjQjSkNvcEzpWTsVe2+rtPbdkKfDEJ/WSAXpztiYj57QfYmLM/tVed8 YyOoQ+QE8w8vqjkAod0J8By98U1uKmpbMWsAdwqqpBnCW/evn5OfWxsEIQxS+fNi8qX5 3Ef6BK8ftkp1sutR4Bsi5uwUfMLb003wQBpJx8aSnDf2W88a7tUtJvgOopn1Zao8HDSB k4316VoI7X7HQFqAGAPDHJoK/pv8TE/hoB+1XiFcByCc8O8ALx3J1DSs1HA80SxWXuJU 0vRNBTpJZRzlvNW3rSlUHneJNZWGdgeB1sYX4poJRmnUoY/KT3hz7WzcUdQYDL+mLEJk jhsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:arc-authentication-results; bh=AiAFQ6IM1CZIWMQ6ODZhTesmaZXEWKjq9PtsejQ/Zhs=; b=tCUWPpbYeWs0Q0sIxPt2CwsksWZ+LevTrAJDC2WZM9Foeo9oP4reZcmXladYjFDZzJ gPi6gP4vxpcFd/TGkvNx4zZrEfk7p2ipUPIVTzvmCiFmBI/I5gfqN4udCaMJNwixk415 vnz4ZMk0swLVsn8V5ACUzmpU+99730q9myDo8pR5pf44kEIVI/TTcK9GGWHnp2QWYi/c EeJMiOOEoZ0Df1W1xJHCvmKguJFbAI1F2i/mtWmguTP6mOS9VJrumpDn7G5GdS+Sr+un Lj7A0gX2kzRqtMYgx6NYM4rYwQPOx3w4/8AyPxPelxQByYHG99Q80ta/DgoLF7AGmLO3 eyEQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@infradead.org header.s=bombadil.20170209 header.b=iiWXSpk0; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z15-v6si6935758pgf.293.2018.08.04.01.24.25; Sat, 04 Aug 2018 01:24:40 -0700 (PDT) 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=fail header.i=@infradead.org header.s=bombadil.20170209 header.b=iiWXSpk0; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727980AbeHDKXZ (ORCPT + 99 others); Sat, 4 Aug 2018 06:23:25 -0400 Received: from bombadil.infradead.org ([198.137.202.133]:37014 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726055AbeHDKXY (ORCPT ); Sat, 4 Aug 2018 06:23:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=AiAFQ6IM1CZIWMQ6ODZhTesmaZXEWKjq9PtsejQ/Zhs=; b=iiWXSpk0NBlW8X2g4tIeSI4g3 k8mEaCP54vXmx8Tk5ErDEpf5md5ct+afokq6NCdRF5obaSX4x8lzCje/AIob/z5d1oVbtoZIk1mIc EhKmoLPjiSZxkGC0xWf57SI557M+SUBzSzjhNS8Zbas/dMoMtDln/PRClTkwb4FCVQ/KaifkLsJzJ 2RDzwJbXfxaCkBntu3b8GcOVseH/MH7vXpl5JYVTFPeabNQk9W0In/wXrzPlgL+HZQa9auNrxoNv4 7LZ33X0MyS1NCOPl6hAI7/qUOyYaouUDE37quKOc0KO+oWDk7Iu3HEItQIkbtRVeyr7fic/TIKCNh v+5Hcp1Ow==; Received: from [46.125.249.69] (helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.90_1 #2 (Red Hat Linux)) id 1flrqT-0003e8-87; Sat, 04 Aug 2018 08:23:29 +0000 From: Christoph Hellwig To: tglx@linutronix.de, palmer@sifive.com, jason@lakedaemon.net, marc.zyngier@arm.com, robh+dt@kernel.org, mark.rutland@arm.com Cc: anup@brainfault.org, atish.patra@wdc.com, devicetree@vger.kernel.org, aou@eecs.berkeley.edu, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, shorne@gmail.com Subject: [PATCH 2/8] RISC-V: simplify software interrupt / IPI code Date: Sat, 4 Aug 2018 10:23:13 +0200 Message-Id: <20180804082319.5711-3-hch@lst.de> X-Mailer: git-send-email 2.18.0 In-Reply-To: <20180804082319.5711-1-hch@lst.de> References: <20180804082319.5711-1-hch@lst.de> X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Rename handle_ipi to riscv_software_interrupt, drop the unused return value and move the prototype to irq.h together with riscv_timer_interupt. This allows simplifying the upcoming interrupt handling support. Signed-off-by: Christoph Hellwig --- arch/riscv/include/asm/irq.h | 1 + arch/riscv/include/asm/smp.h | 3 --- arch/riscv/kernel/smp.c | 6 ++---- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/arch/riscv/include/asm/irq.h b/arch/riscv/include/asm/irq.h index 4dee9d4c13c0..c871661c9df4 100644 --- a/arch/riscv/include/asm/irq.h +++ b/arch/riscv/include/asm/irq.h @@ -22,6 +22,7 @@ #define INTERRUPT_CAUSE_EXTERNAL 9 void riscv_timer_interrupt(void); +void riscv_software_interrupt(void); #include diff --git a/arch/riscv/include/asm/smp.h b/arch/riscv/include/asm/smp.h index 85e4220839b0..c9395fff246f 100644 --- a/arch/riscv/include/asm/smp.h +++ b/arch/riscv/include/asm/smp.h @@ -44,9 +44,6 @@ void arch_send_call_function_single_ipi(int cpu); */ #define raw_smp_processor_id() (*((int*)((char*)get_current() + TASK_TI_CPU))) -/* Interprocessor interrupt handler */ -irqreturn_t handle_ipi(void); - #endif /* CONFIG_SMP */ #endif /* _ASM_RISCV_SMP_H */ diff --git a/arch/riscv/kernel/smp.c b/arch/riscv/kernel/smp.c index 6d3962435720..906fe21ea21b 100644 --- a/arch/riscv/kernel/smp.c +++ b/arch/riscv/kernel/smp.c @@ -45,7 +45,7 @@ int setup_profiling_timer(unsigned int multiplier) return -EINVAL; } -irqreturn_t handle_ipi(void) +void riscv_software_interrupt(void) { unsigned long *pending_ipis = &ipi_data[smp_processor_id()].bits; @@ -60,7 +60,7 @@ irqreturn_t handle_ipi(void) ops = xchg(pending_ipis, 0); if (ops == 0) - return IRQ_HANDLED; + return; if (ops & (1 << IPI_RESCHEDULE)) scheduler_ipi(); @@ -73,8 +73,6 @@ irqreturn_t handle_ipi(void) /* Order data access and bit testing. */ mb(); } - - return IRQ_HANDLED; } static void -- 2.18.0