b8c30e3285
libsysprof: add kallsyms to capture file
...
This can be used by the kernel symbol resolver to resolve symbols on a
different machine than where the capture is performed.
2019-05-29 15:13:01 -07:00
c7b4465e27
libsysprof: add missing new func
2019-05-29 15:13:01 -07:00
17a835570e
build: remove dead code
2019-05-29 15:13:01 -07:00
3706869e06
libsysprof: clear trace fd after reading
2019-05-29 15:13:01 -07:00
552ccb4f60
libsysprof: move tracefd to separate source
2019-05-29 15:13:01 -07:00
385ece7c41
whitespace
2019-05-29 15:13:01 -07:00
7bba7a4dff
hostinfo: get proc fd from daemon
...
Current CPU speed is censored in various containers, so we need access to
it from the daemon.
2019-05-29 15:13:01 -07:00
2c6044d7bb
helpers: remove flatpak check for now
...
We don't know if the file is sensitive or not, so we must go to the
daemon for the contents.
2019-05-29 15:13:01 -07:00
272a0e284e
whitespace
2019-05-29 15:13:01 -07:00
697ef7f350
libsysprof: serialize dbus proxy settings
2019-05-29 15:13:01 -07:00
7bec0d7698
libsysprof: make sure we have a SysprofSource
2019-05-29 15:13:01 -07:00
aac6e6ed9f
Revert "helpers: try harder to avoid D-Bus to daemon"
...
This reverts commit 84c708890621472d640dfe2360e1273fcc5163cf.
This caused some issues with callgraphs.
2019-05-29 15:13:01 -07:00
404317d49d
libsysprof: implement various serialization hooks
2019-05-29 15:13:01 -07:00
974cbf5130
libsysprof: add helper to create profiler from capture reader
...
This will look at what was in the reader before and create a new local
profiler from that. This still needs to add support for restoring info
from sources which need to be inflated.
2019-05-29 15:13:01 -07:00
9229e41976
libsysprof: allow auto-start of sysprof3
...
We don't need to allow auth here, but we do need to allow auto-start.
2019-05-29 15:13:01 -07:00
6a5c00b446
libsysprof: store some information about the profile in keyfile
...
This gets added as a metadata chunk to the capture file so that we can
use it later to recreate the session. The goal is to add something like
ctrl+r to run the capture again with identical settings to the previous
capture.
2019-05-29 15:13:01 -07:00
5331e8bd7f
hostinfo: actually parse cpu freq details
2019-05-29 15:13:01 -07:00
cfab4b2d73
libsysprof: skip when no writer is available
2019-05-29 15:13:01 -07:00
54c39172df
libsysprof-ui: fix dereference after steal
...
This is undefined behavior and most go right to left
2019-05-29 15:13:01 -07:00
27e75cf61b
libsysprof: improve some defaults
2019-05-29 15:13:01 -07:00
4f00ec5e49
libsysprof: add some symbol libraries
2019-05-29 15:13:01 -07:00
3321308c4a
libsysprof: use SYSPROF_TRACE_FD env var when spawning
...
This avoids connecting to the bus which is racey, and instead just hands
the FD off to the subprocess.
2019-05-29 15:13:01 -07:00
dbc47a3a69
libsysprof: log source failure to console
2019-05-29 15:13:01 -07:00
c204081cc0
libsysprof: add vfunc to modify spawn arguments
2019-05-29 15:13:01 -07:00
13b3edcbf6
helpers: try harder to avoid D-Bus to daemon
2019-05-29 15:13:01 -07:00
86aeb56f41
libsysprof: join using cat helper
2019-05-29 15:13:01 -07:00
570df015fa
libsysprof: start on proxy source implementation
...
Still need to implement the join support for the writer.
2019-05-29 15:13:01 -07:00
1ba6799847
whitespace
2019-05-29 15:13:01 -07:00
234200f8d1
libsysprof: try local proc file access if not in flatpak
2019-05-29 15:13:01 -07:00
931849b25c
build: add missing libraries to pkgconfig files
2019-05-29 15:13:01 -07:00
53addd7222
libsysprof: emit finished in source
2019-05-29 15:13:00 -07:00
4ef741348c
libsysprof-ui: set as ready for now
2019-05-29 15:13:00 -07:00
588fd43d8b
libsysprof-ui: stub out proxy source
...
The goal for this (which is unfinished) is to setup a dbus proxy to the
peer. That can be reused for both gtk and mutter, if configured correctly.
We'll likely need to allow some specific config tweaks in the UI.
2019-05-29 15:13:00 -07:00
c368da09de
libsysprof-ui: allow restricting remote proxy
2019-05-29 15:13:00 -07:00
53a337bf00
whitespace
2019-05-29 15:13:00 -07:00
5718b5fb20
libsysprof: more fallbacks for bad proxy
2019-05-29 15:13:00 -07:00
5e368cede2
libsysprof: process local task parsing on a thread
2019-05-29 15:13:00 -07:00
59d40f4146
libsysprof: better empty check
2019-05-29 15:13:00 -07:00
59c2fb4b64
libsysprof: add is_empty() helper
...
This can be bound easier should we support GIR in the future.
2019-05-29 15:13:00 -07:00
209a2689d9
whitespace
2019-05-29 15:13:00 -07:00
91c95a0e0d
libsysprof-ui: work on async loading
2019-05-29 15:13:00 -07:00
e3cfdddf46
libsysprof: handle failure case better
2019-05-29 15:13:00 -07:00
d6e3d580fd
helpers: do not allow interactive authorization
...
We want to use the authorize_async() flow up front to authorize the
connection, and then make all other API fail immediately to reduce the
chance that we block the peers.
2019-05-29 15:13:00 -07:00
7291b14575
memory: get FD using the SysprofHelpers
2019-05-29 15:13:00 -07:00
9d72203687
sysprofd: add API to get a FD for a file in proc
...
This is useful for optimized parsing of proc files such as necessary by
the memory source to seek() back to the start (instead of re-opening a
new file).
2019-05-29 15:13:00 -07:00
16bc6f970e
libsysprof: remove dead code
2019-05-29 15:13:00 -07:00
70ace7f160
libsysprof: fix kernel symbols init
2019-05-29 15:13:00 -07:00
df1217bbb8
libsysprof: use helpers to get proc info from host
2019-05-29 15:13:00 -07:00
36ecfd3dd1
libsysprof: add async variant for proc source
2019-05-29 15:13:00 -07:00
6bb7eded8a
libsysprof: use daemon to get unredacted process info
2019-05-29 15:13:00 -07:00