From 31d83a12b90054344a7e9441ea0bb7e852bbe4bf Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Tue, 4 Feb 2020 11:08:01 -0800 Subject: [PATCH] elf: short-circuit symbol resolving --- src/libsysprof/sysprof-elf-symbol-resolver.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/libsysprof/sysprof-elf-symbol-resolver.c b/src/libsysprof/sysprof-elf-symbol-resolver.c index 5dec9ecb..2425ed66 100644 --- a/src/libsysprof/sysprof-elf-symbol-resolver.c +++ b/src/libsysprof/sysprof-elf-symbol-resolver.c @@ -400,6 +400,14 @@ sysprof_elf_symbol_resolver_resolve_with_context (SysprofSymbolResolver *resolve gchar *name = NULL; SysprofCaptureAddress begin, end; + /* If not user context, nothing we can do here */ + if (context != SYSPROF_ADDRESS_CONTEXT_USER) + return NULL; + + /* If this is a jitmap entry, bail early to save some cycles */ + if ((address & SYSPROF_CAPTURE_JITMAP_MARK) == SYSPROF_CAPTURE_JITMAP_MARK) + return NULL; + sysprof_elf_symbol_resolver_resolve_full (SYSPROF_ELF_SYMBOL_RESOLVER (resolver), time, pid,