From patchwork Mon Oct 20 17:22:09 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Catalin Marinas X-Patchwork-Id: 401206 Return-Path: X-Original-To: incoming-imx@patchwork.ozlabs.org Delivered-To: patchwork-incoming-imx@bilbo.ozlabs.org Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2001:1868:205::9]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 6BF2C140092 for ; Tue, 21 Oct 2014 04:25:09 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1XgGfS-0003n9-JE; Mon, 20 Oct 2014 17:22:50 +0000 Received: from foss-mx-na.foss.arm.com ([217.140.108.86]) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1XgGfN-0003kA-DT for linux-arm-kernel@lists.infradead.org; Mon, 20 Oct 2014 17:22:46 +0000 Received: from foss-smtp-na-1.foss.arm.com (unknown [10.80.61.8]) by foss-mx-na.foss.arm.com (Postfix) with ESMTP id BF9EEF5; Mon, 20 Oct 2014 12:22:14 -0500 (CDT) Received: from collaborate-mta1.arm.com (highbank-bc01-b06.austin.arm.com [10.112.81.134]) by foss-smtp-na-1.foss.arm.com (Postfix) with ESMTP id 72A765FAD7; Mon, 20 Oct 2014 12:22:12 -0500 (CDT) Received: from e104818-lin.cambridge.arm.com (e104818-lin.cambridge.arm.com [10.1.203.148]) by collaborate-mta1.arm.com (Postfix) with ESMTPS id 5AB5913F8F5; Mon, 20 Oct 2014 12:22:11 -0500 (CDT) Date: Mon, 20 Oct 2014 18:22:09 +0100 From: Catalin Marinas To: Guenter Roeck Subject: Re: [PATCH] arm64: Fix compile error seen in non-SMP builds Message-ID: <20141020172208.GL23751@e104818-lin.cambridge.arm.com> References: <1412990134-31186-1-git-send-email-linux@roeck-us.net> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <1412990134-31186-1-git-send-email-linux@roeck-us.net> User-Agent: Mutt/1.5.23 (2014-03-12) X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20141020_102245_461613_F48D8860 X-CRM114-Status: GOOD ( 11.05 ) X-Spam-Score: -1.4 (-) X-Spam-Report: SpamAssassin version 3.4.0 on bombadil.infradead.org summary: Content analysis details: (-1.4 points) pts rule name description ---- ---------------------- -------------------------------------------------- -1.4 RP_MATCHES_RCVD Envelope sender domain matches handover relay domain -0.0 SPF_PASS SPF: sender matches SPF record Cc: Frederic Weisbecker , Will Deacon , "linux-kernel@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org List-Id: linux-imx-kernel.lists.patchwork.ozlabs.org On Sat, Oct 11, 2014 at 02:15:34AM +0100, Guenter Roeck wrote: > Fix: > > In file included from ./arch/arm64/include/asm/irq_work.h:4:0, > from include/linux/irq_work.h:46, > from include/linux/perf_event.h:49, > from include/linux/ftrace_event.h:9, > from include/trace/syscall.h:6, > from include/linux/syscalls.h:81, > from init/main.c:18: > ./arch/arm64/include/asm/smp.h:24:3: > error: #error " included in non-SMP build" > # error " included in non-SMP build" > ^ > ./arch/arm64/include/asm/smp.h:27:0: warning: "raw_smp_processor_id" redefined > #define raw_smp_processor_id() (current_thread_info()->cpu) > ^ > > and: > > In file included from ./arch/arm64/include/asm/irq_work.h:4:0, > from include/linux/irq_work.h:46, > from kernel/irq_work.c:11: > ./arch/arm64/include/asm/smp_plat.h:56:30: > error: ‘NR_CPUS’ undeclared here (not in a function) > extern u64 __cpu_logical_map[NR_CPUS]; > > by providing a helper function in smp_plat.h, similar to the arm implementation, > and by removing NR_CPUS from smp_plat.h. > > Fixes: 3631073659d0 ("arm64: Tell irq work about self IPI support") > Cc: Frederic Weisbecker > Signed-off-by: Guenter Roeck Isn't something like this simpler: diff --git a/arch/arm64/include/asm/irq_work.h b/arch/arm64/include/asm/irq_work.h index 8e24ef3f7c82..b4f6b19a8a68 100644 --- a/arch/arm64/include/asm/irq_work.h +++ b/arch/arm64/include/asm/irq_work.h @@ -1,6 +1,8 @@ #ifndef __ASM_IRQ_WORK_H #define __ASM_IRQ_WORK_H +#ifdef CONFIG_SMP + #include static inline bool arch_irq_work_has_interrupt(void) @@ -8,4 +10,13 @@ static inline bool arch_irq_work_has_interrupt(void) return !!__smp_cross_call; } +#else + +static inline bool arch_irq_work_has_interrupt(void) +{ + return false; +} + +#endif + #endif /* __ASM_IRQ_WORK_H */