hc
2024-02-19 151fecfb72a0d602dfe79790602ef64b4e241574
kernel/tools/perf/util/probe-finder.h
....@@ -4,8 +4,9 @@
44
55 #include <stdbool.h>
66 #include "intlist.h"
7
+#include "build-id.h"
78 #include "probe-event.h"
8
-#include "sane_ctype.h"
9
+#include <linux/ctype.h>
910
1011 #define MAX_PROBE_BUFFER 1024
1112 #define MAX_PROBES 128
....@@ -32,6 +33,7 @@
3233 Dwfl_Module *mod;
3334 Dwfl *dwfl;
3435 Dwarf_Addr bias;
36
+ const unsigned char *build_id;
3537 };
3638
3739 /* This also tries to open distro debuginfo */
....@@ -59,11 +61,12 @@
5961 struct variable_list **vls);
6062
6163 /* Find a src file from a DWARF tag path */
62
-int get_real_path(const char *raw_path, const char *comp_dir,
63
- char **new_path);
64
+int find_source_path(const char *raw_path, const char *sbuild_id,
65
+ const char *comp_dir, char **new_path);
6466
6567 struct probe_finder {
6668 struct perf_probe_event *pev; /* Target probe event */
69
+ struct debuginfo *dbg;
6770
6871 /* Callback when a probe point is found */
6972 int (*callback)(Dwarf_Die *sc_die, struct probe_finder *pf);
....@@ -87,6 +90,7 @@
8790 unsigned int machine; /* Target machine arch */
8891 struct perf_probe_arg *pvar; /* Current target variable */
8992 struct probe_trace_arg *tvar; /* Current result variable */
93
+ bool skip_empty_arg; /* Skip non-exist args */
9094 };
9195
9296 struct trace_event_finder {