All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] arm64: prefetch: add missing #include for spin_lock_prefetch
@ 2016-02-10 10:07 Will Deacon
  2016-02-10 10:41 ` Catalin Marinas
  0 siblings, 1 reply; 2+ messages in thread
From: Will Deacon @ 2016-02-10 10:07 UTC (permalink / raw)
  To: linux-arm-kernel

As of 52e662326e1e ("arm64: prefetch: don't provide spin_lock_prefetch
with LSE"), spin_lock_prefetch is patched at runtime when the LSE atomics
are in use. This relies on the ARM64_LSE_ATOMIC_INSN macro to drive
the alternatives framework, but that macro is only available via
asm/lse.h, which isn't explicitly included in processor.h. Consequently,
drivers can run into build failures such as:

   In file included from include/linux/prefetch.h:14:0,
                    from drivers/net/ethernet/intel/i40e/i40e_txrx.c:27:
   arch/arm64/include/asm/processor.h: In function 'spin_lock_prefetch':
   arch/arm64/include/asm/processor.h:183:15: error: expected string literal before 'ARM64_LSE_ATOMIC_INSN'
     asm volatile(ARM64_LSE_ATOMIC_INSN(

This patch add the missing include and gets things building again.

Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
---
 arch/arm64/include/asm/processor.h | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm64/include/asm/processor.h b/arch/arm64/include/asm/processor.h
index 31b76fce4477..5bb1d763d17a 100644
--- a/arch/arm64/include/asm/processor.h
+++ b/arch/arm64/include/asm/processor.h
@@ -32,6 +32,7 @@
 #include <asm/alternative.h>
 #include <asm/fpsimd.h>
 #include <asm/hw_breakpoint.h>
+#include <asm/lse.h>
 #include <asm/pgtable-hwdef.h>
 #include <asm/ptrace.h>
 #include <asm/types.h>
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [PATCH] arm64: prefetch: add missing #include for spin_lock_prefetch
  2016-02-10 10:07 [PATCH] arm64: prefetch: add missing #include for spin_lock_prefetch Will Deacon
@ 2016-02-10 10:41 ` Catalin Marinas
  0 siblings, 0 replies; 2+ messages in thread
From: Catalin Marinas @ 2016-02-10 10:41 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Feb 10, 2016 at 10:07:30AM +0000, Will Deacon wrote:
> As of 52e662326e1e ("arm64: prefetch: don't provide spin_lock_prefetch
> with LSE"), spin_lock_prefetch is patched at runtime when the LSE atomics
> are in use. This relies on the ARM64_LSE_ATOMIC_INSN macro to drive
> the alternatives framework, but that macro is only available via
> asm/lse.h, which isn't explicitly included in processor.h. Consequently,
> drivers can run into build failures such as:
> 
>    In file included from include/linux/prefetch.h:14:0,
>                     from drivers/net/ethernet/intel/i40e/i40e_txrx.c:27:
>    arch/arm64/include/asm/processor.h: In function 'spin_lock_prefetch':
>    arch/arm64/include/asm/processor.h:183:15: error: expected string literal before 'ARM64_LSE_ATOMIC_INSN'
>      asm volatile(ARM64_LSE_ATOMIC_INSN(
> 
> This patch add the missing include and gets things building again.
> 
> Reported-by: kbuild test robot <fengguang.wu@intel.com>
> Signed-off-by: Will Deacon <will.deacon@arm.com>

Applied. Thanks.

-- 
Catalin

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-02-10 10:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-10 10:07 [PATCH] arm64: prefetch: add missing #include for spin_lock_prefetch Will Deacon
2016-02-10 10:41 ` Catalin Marinas

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.