c135fc875c
Enable mips to use only the common headers in the implementation of the vDSO library. Signed-off-by: Vincenzo Frascino <vincenzo.frascino@arm.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Paul Burton <paulburton@kernel.org> Link: https://lkml.kernel.org/r/20200320145351.32292-23-vincenzo.frascino@arm.com
28 lines
745 B
C
28 lines
745 B
C
/* SPDX-License-Identifier: GPL-2.0-only */
|
|
/*
|
|
* Copyright (C) 2020 ARM Ltd.
|
|
*/
|
|
#ifndef __ASM_VDSO_PROCESSOR_H
|
|
#define __ASM_VDSO_PROCESSOR_H
|
|
|
|
#ifndef __ASSEMBLY__
|
|
|
|
#ifdef CONFIG_CPU_LOONGSON64
|
|
/*
|
|
* Loongson-3's SFB (Store-Fill-Buffer) may buffer writes indefinitely when a
|
|
* tight read loop is executed, because reads take priority over writes & the
|
|
* hardware (incorrectly) doesn't ensure that writes will eventually occur.
|
|
*
|
|
* Since spin loops of any kind should have a cpu_relax() in them, force an SFB
|
|
* flush from cpu_relax() such that any pending writes will become visible as
|
|
* expected.
|
|
*/
|
|
#define cpu_relax() smp_mb()
|
|
#else
|
|
#define cpu_relax() barrier()
|
|
#endif
|
|
|
|
#endif /* __ASSEMBLY__ */
|
|
|
|
#endif /* __ASM_VDSO_PROCESSOR_H */
|