All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] powerpc/trace elfv1: Update syscall name matching logic
@ 2018-05-04 13:14 Naveen N. Rao
  2018-05-04 13:14 ` [PATCH 2/2] powerpc/trace: Update syscall name matching logic to account for ppc_ prefix Naveen N. Rao
  2018-05-09 14:59 ` [1/2] powerpc/trace elfv1: Update syscall name matching logic Michael Ellerman
  0 siblings, 2 replies; 3+ messages in thread
From: Naveen N. Rao @ 2018-05-04 13:14 UTC (permalink / raw)
  To: Michael Ellerman; +Cc: linuxppc-dev, Dominik Brodowski

On powerpc64 ABIv1, we are enabling syscall tracing for only ~20
syscalls. This is due to commit e145242ea0df6 ("syscalls/core,
syscalls/x86: Clean up syscall stub naming convention") which has
changed the syscall entry wrapper prefix from "SyS" to "__se_sys".

Update the logic for ABIv1 to not just skip the initial dot, but also
the "__se_sys" prefix.

Fixes: commit e145242ea0df6 ("syscalls/core, syscalls/x86: Clean up syscall stub naming convention")
Reported-by: Michael Ellerman <mpe@ellerman.id.au>
Signed-off-by: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
---
 arch/powerpc/include/asm/ftrace.h | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/arch/powerpc/include/asm/ftrace.h b/arch/powerpc/include/asm/ftrace.h
index f7a23c2dce74..731cb4314a42 100644
--- a/arch/powerpc/include/asm/ftrace.h
+++ b/arch/powerpc/include/asm/ftrace.h
@@ -71,13 +71,9 @@ struct dyn_arch_ftrace {
 #define ARCH_HAS_SYSCALL_MATCH_SYM_NAME
 static inline bool arch_syscall_match_sym_name(const char *sym, const char *name)
 {
-	/*
-	 * Compare the symbol name with the system call name. Skip the .sys or .SyS
-	 * prefix from the symbol name and the sys prefix from the system call name and
-	 * just match the rest. This is only needed on ppc64 since symbol names on
-	 * 32bit do not start with a period so the generic function will work.
-	 */
-	return !strcmp(sym + 4, name + 3);
+	/* We need to skip past the initial dot, and the __se_sys alias */
+	return !strcmp(sym + 1, name) ||
+		(!strncmp(sym, ".__se_sys", 9) && !strcmp(sym + 6, name));
 }
 #endif
 #endif /* CONFIG_FTRACE_SYSCALLS && !__ASSEMBLY__ */
-- 
2.17.0

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

end of thread, other threads:[~2018-05-09 14:59 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-04 13:14 [PATCH 1/2] powerpc/trace elfv1: Update syscall name matching logic Naveen N. Rao
2018-05-04 13:14 ` [PATCH 2/2] powerpc/trace: Update syscall name matching logic to account for ppc_ prefix Naveen N. Rao
2018-05-09 14:59 ` [1/2] powerpc/trace elfv1: Update syscall name matching logic Michael Ellerman

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.