Commit Graph

7 Commits

Author SHA1 Message Date
eca993b42c preload: add static assertion with offsetof() check 2024-09-12 09:26:13 -07:00
f00773702a preload: always track realloc changes
We might go to zero, or we might change our size. Either way we want to
have accurate information about that size change.
2023-08-15 14:29:01 -07:00
4ad44609d0 build: remove optional support for libunwind
backtrace() was only ever used for bringup, not actually meant to be used
in any production capacity.
2023-08-11 12:22:57 -07:00
50cfd82286 meson: remove extraneous default install_dir arguments 2023-07-28 14:02:33 -05:00
b10d056635 meson: use dependency('dl')
Added in Meson 0.62.0. It aids in finding libdl on various platforms.
2023-07-28 14:00:57 -05:00
3a94170b0a libsysprof-capture: add frame type for tracing
This is like sample but has an "enter/exit" flag with it. This can be
useful when you want to provide tracing instead of sampling. We use a
different frame type so that we can denote that this isn't traditional
sampling, and the flag can be used to find the next exit for the current
enter for calculating durations.

The entire stack trace is provided to make things easier on tools
which may want to deal with indirect functions that were not instrumented
but can be unwound. That may allow for tooling to give the user some
insight that it's not *just* this function entering, but some functions
before it were entered too.

This also adds a SysprofTracer instrument which will preload a
libsysprof-tracer-6.so into the process providing the
__cyg_profile_func_enter() and __cyg_profile_func_leave() hooks.
2023-06-13 12:41:50 -07:00
8202a40f4d preload: hoist preloads into src/ directory
They will get used from libsysprof-profile, but it's nice to have them
a directory up going forward.
2023-06-06 16:32:21 -07:00