72c6b06102
libsysprof-analyze: fix type in constructor
2023-07-08 11:57:57 -07:00
d993bf3d37
libsysprof-analyze: expose logs as document property
...
# Conflicts:
# src/libsysprof-analyze/sysprof-document.c
2023-07-06 16:53:38 -07:00
f772b82f66
libsysprof-analyze: expose files as a property
2023-07-06 15:53:48 -07:00
b3f8b45b16
libsysprof-analyze: add duration property to process
...
This is a bit easier to bind to a chart since we need the expression as
a duration rather than the end time.
2023-07-06 15:33:56 -07:00
a999a8a455
libsysprof-analyze: expose processes as property
2023-07-06 15:20:11 -07:00
51abce735c
libsysprof-analyze: ensure exit-time is >= spawn time
2023-07-06 15:00:59 -07:00
f7bdebe1a8
libsysprof-analyze: ensure all process info get an exit time
2023-07-06 14:59:08 -07:00
58a089fb94
libsysprof-analyze: expose exit-time as a property
2023-07-06 14:58:53 -07:00
2b29ce8e73
libsysprof-analyze: record exit time of processes
...
This will allow us to treat them as a duration in a chart.
2023-07-06 14:52:02 -07:00
65a567f0d1
libsysprof-analyze: cleanup some signed-int bswap
2023-07-06 14:51:41 -07:00
c0a7a94d52
libsysprof-analyze: add flag to ignore system libraries
2023-07-06 12:13:23 -07:00
5884636da5
libsysprof-analyze: add some string helpers
2023-07-06 11:32:23 -07:00
7f23fd5e9e
libsysprof-analyze: pre-sort frames during loading
...
That way we can be sure that we only have to look forward to find closing
pairs of operation (such as allocation/free, or appended capture data from
controlfd ring buffers).
2023-07-06 10:19:55 -07:00
9fd20c306f
libsysprof-analyze: warn on non-aligned or short-frames
...
And bail doing any further processing on the capture.
2023-07-06 10:18:52 -07:00
7d93b9f581
libsysprof-analyze: add stack traces w/o kernel context
...
This restores the functionality we had previously for user vs kernel.
2023-07-05 18:06:42 -07:00
68cda70138
libsysprof-analyze: add format helper
2023-07-05 17:53:44 -07:00
36aa121607
libsysprof-analyze: helper to list traceables by string search
...
This will let you take a callgraph and create a new GListModel containing
the original traceables but filtered with something like "_sysprof_*" to
get all traceables containing functions starting with "_sysprof_".
2023-07-05 16:53:44 -07:00
9263624fa0
libsysprof-gtk: add track for samples with context switches
2023-07-05 16:31:45 -07:00
2e0f046390
libsysprof-analyze: add aggregate marks by group
...
This is handy so that we can show aggregate results in other places without
using a FlattenListModel which can mess up event ordering.
2023-07-05 16:07:07 -07:00
9481c8e772
libsysprof-analyze: add duration helper
2023-06-30 15:02:46 -07:00
d8ba258051
libsysprof-analyze: give SysprofDocument a title
2023-06-30 13:23:54 -07:00
5220c6bc21
libsysprof-analyze: add getters for min/max value
2023-06-29 14:14:05 -07:00
756e647e21
libsysprof-analyze: add sysprof_document_find_counter()
...
This allows finding a specific counter without having to traverse them
all from consumer code.
2023-06-29 10:36:40 -07:00
4efb0abbf8
libsysprof-analyze: give counter values access to type
...
Otherwise they won't know how to return the proper value to callers.
2023-06-27 15:52:51 -07:00
e15050b568
libsysprof-analyze: fix calculation of number of counters
2023-06-27 13:54:04 -07:00
26346ec790
libsysprof-analyze: sort counter values by time
2023-06-27 13:00:33 -07:00
a880d02a84
libsysprof-analyze: remove debug code
2023-06-27 12:37:23 -07:00
886ff654a1
libsysprof-analyze: calculate counter range after adding values
...
Otherwise we are just calculating a null set.
2023-06-27 12:19:56 -07:00
514f913f40
libsysprof-gtk: use 0 instead of -inf/inf
2023-06-27 10:59:00 -07:00
696205aaf2
libsysprof-gtk: get expressions for x/y of counter values
2023-06-26 18:14:25 -07:00
6e08309881
libsysprof-analyze: fix pre-calculation
2023-06-26 18:08:37 -07:00
db0d5cce91
libsysprof-analyze: add counters property
2023-06-26 17:52:36 -07:00
d386f13051
libsysprof-analyze: pre-calculate ranges for counters
2023-06-26 17:52:27 -07:00
2b96da9567
libsysprof-analyze: add property for mark end time
2023-06-26 16:46:18 -07:00
453882a39a
libsysprof-analyze: expose properties for some data
2023-06-26 16:39:43 -07:00
5c2f4dc0a9
libsysprof-analyze: remove old series implementations
2023-06-23 22:28:10 -07:00
13323c5e79
libsysprof-analyze: improve progress notifications
2023-06-21 22:06:42 -07:00
100b200995
libsysprof-analyze: allow series without a model
...
This can be useful when you want to generate some data for graphs.
2023-06-20 17:18:57 -07:00
982eee7f31
libsysprof-analyze: return NULL if series is empty
2023-06-20 15:34:43 -07:00
b40be19530
libsysprof-analyze: add test for symbol collision
2023-06-20 14:24:02 -07:00
07d08597ba
libsysprof-analyze: handle collision in symbol cache
...
If we have two nodes that collide for address space, we need to keep the
one we already have in the symbol cache. The other node cannot be cached
and will be dropped instead.
This fixes a leak when collisions occur.
2023-06-20 14:23:46 -07:00
1aafb143fd
libsysprof-analyze: clear stream on finalize
2023-06-20 14:22:51 -07:00
5787809f95
libsysprof-analyze: add simple strings test for asan
...
This just helps track down if there are any leaks via asan.
2023-06-20 13:49:49 -07:00
7595c611d7
libsysprof-analyze: remove unused function
...
No need for the "peek" variant, so just remove it.
2023-06-20 13:39:09 -07:00
c2a8b04cf7
libsysprof-analyze: ignore inf/-inf values in xy series
2023-06-20 11:49:34 -07:00
d0d19cff39
libsysprof-analyze: use doubles for reference data
...
We only want to move to float for the internal 0..1 positions which are
used to draw to the screen (to reduce how much data we hold on to). But for
the data we need to calculate those 0..1 positions, we want better
precision for large numbers. Use double for all of those.
2023-06-20 11:49:22 -07:00
72d489f786
libsysprof-analyze: use weak backpointers for child listmodel
2023-06-20 11:26:10 -07:00
ab5c0c2bf7
libsysprof-analyze: don't leak subvolume mount option
2023-06-20 11:19:01 -07:00
3dfd5c0550
libsysprof-analyze: make error message better
2023-06-20 11:03:56 -07:00
29c72cf202
libsysprof-analyze: cleanup tid->symbol hashtable
2023-06-20 11:03:43 -07:00