Messages in this thread Patch in this message | | | Date | Fri, 20 Mar 2020 19:00:10 +0100 | From | Thomas Gleixner <> | Subject | [patch V3 14/23] x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline |
| |
Prevent the compiler from uninlining and creating traceable/probable functions as this is invoked _after_ context tracking switched to CONTEXT_USER and rcu idle.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de> --- arch/x86/include/asm/nospec-branch.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
--- a/arch/x86/include/asm/nospec-branch.h +++ b/arch/x86/include/asm/nospec-branch.h @@ -319,7 +319,7 @@ DECLARE_STATIC_KEY_FALSE(mds_idle_clear) * combination with microcode which triggers a CPU buffer flush when the * instruction is executed. */ -static inline void mds_clear_cpu_buffers(void) +static __always_inline void mds_clear_cpu_buffers(void) { static const u16 ds = __KERNEL_DS; @@ -340,7 +340,7 @@ static inline void mds_clear_cpu_buffers * * Clear CPU buffers if the corresponding static key is enabled */ -static inline void mds_user_clear_cpu_buffers(void) +static __always_inline void mds_user_clear_cpu_buffers(void) { if (static_branch_likely(&mds_user_clear)) mds_clear_cpu_buffers();
| |