352fa617c0
libsysprof-analyze: fix transfer ownership of refstring
2023-05-11 14:05:07 -07:00
5d5f0a5085
libsysprof-analyze: plumb access to string pooling
...
We want various subsystems to start using this, but we need to plumb it
to the symbolizers to take advantage of it.
2023-05-11 13:09:50 -07:00
9b5e25037b
libsysprof-analyze: add SysprofProcessInfo
...
This internal type is used to collect things about a process like the
memory maps, address layout, and symbol cache. This can persist once
parsed at startup, then applied to objects created on demand such as the
SysprofDocumentProcess or used by symbolizers internally rather than
complicated function arguments.
2023-05-11 12:21:32 -07:00
8f4fa95663
libsysprof-analyze: use mountnamespace/addresslayout in symbolize
2023-05-10 16:51:05 -07:00
b3a4c295c3
libsysprof-analyze: add basic symbol cache
...
This relies on begin/end range for the symbols to create something akin to
an interval tree, albeit with GSequence. If performance needs to be
addressed, can probably augment SysprofSymbol for an interval rbtree.
2023-05-10 15:14:09 -07:00
b625fec454
libsysprof-analyze: add basic symbolize API
...
This isn't what it will look like in final form, just get the minimum
there for us to use it with the bundled decoder (copied from libsysprof
with adaptations).
2023-05-09 13:29:52 -07:00
689599ef43
libsysprof-analyze: add note about symbolizing work
2023-05-08 16:16:09 -07:00
6daff5ac6e
libsysprof-analyze: return symbols for context switches
2023-05-08 15:49:42 -07:00
7f6191a3dd
libsysprof-analyze: add stub for symbol lookup
2023-05-08 14:00:09 -07:00
f2479912e6
libsysprof-analyze: cleanup some helper code for symbolize
2023-05-08 12:24:44 -07:00
1c75c4c548
libsysprof-analyze: rename samples to traceables
...
This includes all current traceables, not just samples, so make the name
a bit more clear which it is.
2023-05-05 13:03:03 -07:00
377e8e26c6
libsysprof-analyze: print some basic info for debugging
2023-05-04 10:14:43 -07:00
c282b54d41
libsysprof-analyze: fetch the decoded addresses onto the stack
2023-05-04 10:03:05 -07:00
00d8081bfe
libsysprof-analyze: break out helper to for adding traceable
2023-05-03 17:50:51 -07:00
10c332d5d2
libsysprof-analyze: index traceables for faster access
...
This allows us to skip past all the nodes we don't care about with
relatively low overhead once the document has been generated.
2023-05-03 17:44:15 -07:00
b72eda6be2
libsysprof-analyze: prepare symbolizers before decoding
2023-05-03 17:22:37 -07:00
f550394b62
libsysprof-analyze: add prepare vfunc for symbolizers
...
This will allow them to pre-process the document and extract whatever
information they need out of it to do symbolizing.
2023-05-03 15:31:56 -07:00
426aaad781
libsysprof-analyze: add plumbing for symbolization
...
This gets the worker thread going and the state passed to eventually do
symbolization through the new symbolizer API.
2023-05-03 14:59:46 -07:00
976fb93a83
libsysprof-analyze: start on symbols API via document
2023-05-03 14:21:17 -07:00