From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754799AbbHQKBP (ORCPT ); Mon, 17 Aug 2015 06:01:15 -0400 Received: from foss.arm.com ([217.140.101.70]:44887 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752306AbbHQKBO (ORCPT ); Mon, 17 Aug 2015 06:01:14 -0400 Date: Mon, 17 Aug 2015 11:01:09 +0100 From: Will Deacon To: "fu.wei@linaro.org" Cc: "linaro-acpi@lists.linaro.org" , "linux-kernel@vger.kernel.org" , "zjzhang@codeaurora.org" , "matt.fleming@intel.com" , "tekkamanninja@gmail.com" , "graeme.gregory@linaro.org" , "al.stone@linaro.org" , "hanjun.guo@linaro.org" , "jcm@redhat.com" , Mark Rutland , Catalin Marinas , "rjw@rjwysocki.net" , "bp@alien8.de" , Tomasz Nowicki Subject: Re: [PATCH] acpi, apei, arm64: APEI initial support for aarch64. Message-ID: <20150817100109.GE1688@arm.com> References: <=fu.wei@linaro.org> <1439555753-11974-1-git-send-email-fu.wei@linaro.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1439555753-11974-1-git-send-email-fu.wei@linaro.org> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Aug 14, 2015 at 01:35:53PM +0100, fu.wei@linaro.org wrote: > From: Tomasz Nowicki > > This commit provides APEI arch-specific bits for aarch64 > > Changelog: > Fu Wei: > Move arch_apei_flush_tlb_one() to arch/arm64/include/asm/apci.h. > Delete arch/arm64/kernel/apei.c. > Add "#ifdef CONFIG_ACPI_APEI" for "acpi_disable_cmcff". > > Signed-off-by: Tomasz Nowicki > Signed-off-by: Fu Wei > --- > arch/arm64/Kconfig | 1 + > arch/arm64/include/asm/acpi.h | 11 +++++++++++ > arch/arm64/kernel/acpi.c | 4 ++++ > 3 files changed, 16 insertions(+) > > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig > index 318175f..6144c9d 100644 > --- a/arch/arm64/Kconfig > +++ b/arch/arm64/Kconfig > @@ -3,6 +3,7 @@ config ARM64 > select ACPI_CCA_REQUIRED if ACPI > select ACPI_GENERIC_GSI if ACPI > select ACPI_REDUCED_HARDWARE_ONLY if ACPI > + select HAVE_ACPI_APEI if ACPI > select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE > select ARCH_HAS_ELF_RANDOMIZE > select ARCH_HAS_GCOV_PROFILE_ALL > diff --git a/arch/arm64/include/asm/acpi.h b/arch/arm64/include/asm/acpi.h > index a17b623..ced6e25 100644 > --- a/arch/arm64/include/asm/acpi.h > +++ b/arch/arm64/include/asm/acpi.h > @@ -22,6 +22,7 @@ > #ifdef CONFIG_ACPI_APEI > #include > #include > +#include > #endif > > /* Macros for consistency checks of the GICC subtable of MADT */ > @@ -52,6 +53,9 @@ typedef u64 phys_cpuid_t; > extern int acpi_disabled; > extern int acpi_noirq; > extern int acpi_pci_disabled; > +#ifdef CONFIG_ACPI_APEI > +extern int acpi_disable_cmcff; > +#endif > > static inline void disable_acpi(void) > { > @@ -89,6 +93,13 @@ static inline bool acpi_has_cpu_in_madt(void) > static inline void arch_fix_phys_package_id(int num, u32 slot) { } > void __init acpi_init_cpus(void); > > +#ifdef CONFIG_ACPI_APEI > +static inline void arch_apei_flush_tlb_one(unsigned long addr) > +{ > + flush_tlb_kernel_range(addr, addr + PAGE_SIZE); > +} > +#endif Looking at the callers of this function, I suspect we could downgrade it to a local CPU invalidation if we wanted. However, this isn't a hot-path so it's fine to stay like it is for now. Will