xref: /linux/arch/x86/include/asm/vdso/processor.h (revision fcab107abe1ab5be9dbe874baa722372da8f4f73)
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * Copyright (C) 2020 ARM Ltd.
4  */
5 #ifndef __ASM_VDSO_PROCESSOR_H
6 #define __ASM_VDSO_PROCESSOR_H
7 
8 #ifndef __ASSEMBLER__
9 
10 /* PAUSE is a good thing to insert into busy-wait loops. */
11 static __always_inline void native_pause(void)
12 {
13 	asm volatile("pause" ::: "memory");
14 }
15 
16 static __always_inline void cpu_relax(void)
17 {
18 	native_pause();
19 }
20 
21 struct getcpu_cache;
22 
23 notrace long __vdso_getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *unused);
24 
25 #endif /* __ASSEMBLER__ */
26 
27 #endif /* __ASM_VDSO_PROCESSOR_H */
28