aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2025-12-05 10:07:53 +0000
committerThomas Gleixner <tglx@linutronix.de>2025-12-10 10:10:05 +0900
commitad9c647ad7627d1ced814fca6d75d046b5a04d6b (patch)
treef8b5e80c5cb24d6b6a6212e8ad418c7ebe8c2748
parent40f40edaa30137fe7f09752db60a7a6ab4124ef9 (diff)
downloadtip-core/urgent.tar.gz
rseq: Always inline rseq_debug_syscall_return()core/urgent
To get the full benefit of commit eaa9088d568c ("rseq: Use static branch for syscall exit debug when GENERIC_IRQ_ENTRY=y"), clang needs __always_inline instead of a plain inline qualifier. for i in {1..10}; do taskset -c 4 perf5 bench syscall basic -l 100000000 | grep "ops/sec"; done Before After ops/sec 15424491 15872221 +2.9% Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com> Link: https://patch.msgid.link/20251205100753.4073221-1-edumazet@google.com
-rw-r--r--include/linux/rseq_entry.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/rseq_entry.h b/include/linux/rseq_entry.h
index c92167ff8a7fbd..a36b472627dec8 100644
--- a/include/linux/rseq_entry.h
+++ b/include/linux/rseq_entry.h
@@ -596,7 +596,7 @@ static __always_inline void rseq_exit_to_user_mode_legacy(void)
void __rseq_debug_syscall_return(struct pt_regs *regs);
-static inline void rseq_debug_syscall_return(struct pt_regs *regs)
+static __always_inline void rseq_debug_syscall_return(struct pt_regs *regs)
{
if (static_branch_unlikely(&rseq_debug_enabled))
__rseq_debug_syscall_return(regs);