[sysprof] elf: short-circuit symbol resolving



commit 31d83a12b90054344a7e9441ea0bb7e852bbe4bf
Author: Christian Hergert <chergert redhat com>
Date:   Tue Feb 4 11:08:01 2020 -0800

    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 5dec9ec..2425ed6 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,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]