Commit Graph

599 Commits

Author SHA1 Message Date
ba32676d12 Updated Brazilian Portuguese translation 2016-04-18 12:45:18 +00:00
ff395e94c6 window: protect against delayed ::stopped
Large captures could take a while to complete the stop request, so protect
against that so that the user can't accidentally start another capture.
2016-04-18 00:02:50 -07:00
cd98ded300 Added Swedish translation 2016-04-17 20:06:30 +00:00
b37ca76238 Updated Polish translation 2016-04-17 15:30:12 +02:00
7a639e9bf8 menu-button: ensure the scrolled window is always full width
When no items were present, this was shrinking. It should always maintain
width of the popover.
2016-04-16 18:58:43 -07:00
57faf5b9e6 menu-button: show process arguments in process list
This parses the \0 out of the cmdline proc entry and makes them visible
as both in the list of processes and as tooltips when hovered.
2016-04-16 18:57:50 -07:00
9e082a257d menu-button: hide the process list when whole-system is enabled
No sense in showing a desensitized widget that cannot be toggled except
for discover-ability. But progressive disclosure is probably better.
2016-04-16 18:21:26 -07:00
4fdd7aca71 menu-button: improve error reporting on argv command line 2016-04-16 17:40:07 -07:00
117d4c480d about: handle response from about dialog
On systems where this shows a close button, we need to handle the
response and destroy the dialog.
2016-04-16 17:22:52 -07:00
f4aabd8b7c perf: ignore not-supported failures
If the pre-authorize fails due to lacking support for sysprofd, that is
fine, we can fail later on if authorization was required.
2016-04-16 17:16:29 -07:00
f5904bc493 perf: fix typo
Typo when polkit/sysprofd is unavailable to pre-authorize the request.
2016-04-16 17:14:42 -07:00
4479c56135 perf: polkit is optional for the library
So changing this was a little backwards. The goal here is to allow using
libsysprof-2 without polkit, it just won't have the ability to elevate
privileges.
2016-04-16 17:13:56 -07:00
74d88245c5 perf: use #ifdef not #if
This is conditionally added to CFLAGS, so make sure we use #ifdef instead
of #if.
2016-04-16 17:08:38 -07:00
c2eecefe50 build: add polkit cflags/libs to libsysprof-2 target 2016-04-16 17:05:56 -07:00
f307ce50ab platform: fix missing ;
Clearly, we are testing the fallback path well.
2016-04-16 17:00:56 -07:00
f2d40eda89 platform: include gstdio for g_unlink(). 2016-04-16 16:57:11 -07:00
9f8f33b210 perf: use #ifdef, not #if
config.h does not unconditionally define these, they are not defined when
inactive.
2016-04-16 16:56:41 -07:00
06aaff90e5 perf: optionally enable clockid and use_clockid
Some kernels to not have this feature yet, so check for support in
linux/perf_event.h and optionally enable the struct field.
2016-04-16 16:07:11 -07:00
de572f4ed6 memfd: add workaround for systems without memfd
Just a quick workaround to use a tmpfile if memfd is not available. We
should try to ensure that we get something on tmpfs, but this is probably
good enough for a fallback.
2016-04-16 15:49:03 -07:00
15370ecc42 Updated Brazilian Portuguese translation 2016-04-16 11:03:26 +00:00
605572d645 post-release bump 2016-04-15 19:24:48 -07:00
aaf81c5cfb release Sysprof 3.20.0 2016-04-15 19:22:30 -07:00
8291e05da3 menu-button: sync menu button settings when attaching profiler
We were failing to launch a program a second or third time, due to the
settings not beeing sync'd to the profiler instance.
2016-04-15 18:19:20 -07:00
36008c4ab4 window: notify the user when no valid samples were collected
If we failed to collect any samples in the target profile, let the user
know why the callgraph is empty.
2016-04-15 18:11:31 -07:00
ceeb29b0e6 callgraph: add accessor to determine number of functions
We can use this to notify the user that not enough samples where collected
to build a callgraph. This can happen when all the samples collected are
ignored (due to being in ignored kernel space address ranges for example).
2016-04-15 18:11:02 -07:00
d4ab108786 window: title should be set on headerbar
When set on the window, we seem to lose the value when inserting the
headerbar, resulting in the title being "sysprof" (binary name) according
to the shell. Setting this on the headerbar seems to fix that.
2016-04-15 17:51:32 -07:00
ae5338aaf1 theme: add fallback styling for 3.18
New styling doesn't apply on 3.18 which is used on F23. Since packages are
being built for that, might as well fix the styling.
2016-04-15 17:17:44 -07:00
ab4dd75269 Added Brazilian Portuguese translation for help files 2016-04-15 12:50:48 -03:00
ff6dc11350 Updated Brazilian Portuguese translation 2016-04-15 15:44:55 +00:00
4fc64e1bed Added Brazilian Portuguese translation 2016-04-15 14:21:27 +00:00
18d2d81824 perf-source: we need PERF_SAMPLE_TID
I mistakingly removed this, which caused us to not get sample delivery.
2016-04-15 05:04:29 -07:00
49e9ad9db8 capture: make counter value a union of int64 and double
This allows us to use the type field of the counter to specify if the
counter is a double or a 64-bit integer.
2016-04-15 04:54:55 -07:00
88cc6485dd dump: add more info on various events 2016-04-15 04:51:23 -07:00
48420b0c87 writer: increment the next counter id, not the return value 2016-04-15 04:51:23 -07:00
253b387323 capture: add sp_capture_reader_peek_frame()
It can be useful to peek at the whole frame header (for things like time
or pid or cpu).
2016-04-15 04:51:23 -07:00
ad5f855a2b capture: add 64-bit time stamp for start time
We keep the start time as a iso8601 string, which is useful, but not
enough for relative timestamps to the epoch (start time). Include a
clock time in the same clock domain.
2016-04-15 04:51:23 -07:00
f72306f5a8 writer: use SP_CAPTURE_CURRENT_TIME
This should be nsec, not usec based time.
2016-04-15 04:51:23 -07:00
5d18b77007 tests: use SP_CAPTURE_CURRENT_TIME
We use nanosecond time, not usec.
2016-04-15 04:51:23 -07:00
dd821b48e8 perf-source: fix acquisition of time for comm and mmap events
We were not getting the proper value for time. We need sample_id_all set
according to my cursory reading of the core.c in the kernel. Also, the
time is aligned to 64-bit (after the comm field).
2016-04-15 04:51:23 -07:00
609ee997da perf-counter: pass sample_id_all to sysprofd 2016-04-15 04:51:23 -07:00
3e1bc8eb4a sysprofd: add sample_id_all field to options
We need this to get the time field from mmap/comm events.
2016-04-15 04:51:23 -07:00
d7ed2ddf30 writer: allow callers to define a counter range
This allows dynamic counter ids that can be allocated in blocks.
2016-04-14 21:36:07 -07:00
5356863f2e dump: implement capture dump for ctrdef and ctrset frames 2016-04-14 21:35:37 -07:00
1b8cfed5c8 writer: use dup()d fd when creating reader
Readers can share the file-offset in the file-descriptor table, but should
really have their own fd that they can close().
2016-04-14 19:25:26 -07:00
cd0a39859e capture: drop ADD from capture type
I opted to not implement this yet, so ensure its not in the capture
format types.
2016-04-14 18:33:23 -07:00
c87a90cd9a capture: add frame type for defining and setting counters
We might want to add a CTRADD type later on, for relative values rather
than absolute. But this should get us started.

Simply define counters upfront, and then set them during the capture
process.

Obviously, we need to come up with a good way to visualize this
information in the UI.
2016-04-14 18:29:39 -07:00
9ba08c8d93 window: reset profiler after capture
We don't really want to reuse SpProfiler instances after running, so when
we transition to browsing, reset the profiler instance.
2016-04-14 16:20:32 -07:00
82bdda6f6f window: stop the profiler when closing the window
This is probably more useful when having multiple windows up, so try to
clean things up by stopping the profiler and delaying the close.
2016-04-14 05:49:01 -07:00
cfd49d2c05 window: call stop() if we are currently recording 2016-04-14 05:40:02 -07:00
89e75fae2d profiler: reset timer when starting
If we reuse the profiler instance (not convinced this is a good idea yet)
then we could have a nonzero elapsed time. Reset it immediately so that
the UI doesn't jitter between the previous value and 00:00.
2016-04-14 05:39:49 -07:00