Commit Graph

752 Commits

Author SHA1 Message Date
Bartosz Taudul
9b8eb69886 Apparently sampled call stacks may be empty. 2020-03-28 16:09:44 +01:00
Bartosz Taudul
40281ce2a1 Add default no-op to switch. 2020-03-26 01:07:25 +01:00
Bartosz Taudul
add5b29d03 Report CPU architecture in welcome message. 2020-03-25 21:28:02 +01:00
Bartosz Taudul
ce449ac0e2 Notify server that parameter was handled. 2020-03-25 20:37:26 +01:00
Bartosz Taudul
f114ec3f80 Add code transfer from client to server. 2020-03-25 20:04:55 +01:00
Bartosz Taudul
3e0e120222 Add extra parameter to server queries. 2020-03-25 20:04:01 +01:00
Bartosz Taudul
c999a74d34 Symbol length transfer. 2020-03-25 18:32:36 +01:00
Bartosz Taudul
d47e6819a8 Collect symbol sizes. 2020-03-25 18:28:28 +01:00
Bartosz Taudul
6c0c508280 Ignore kernel-only stacks.
It is common to receive duplicate stack traces for the same timestamp
(and thread), one containing proper user-space stack, and the second one
containing only kernel frames. Discard the second one, as there's no
documentation how this should be interpreted and the kernel stack is
mostly useless.
2020-03-21 15:25:30 +01:00
Bartosz Taudul
c7afda2562 Exit processing loops when trace has stopped. 2020-03-10 18:56:49 +01:00
Bartosz Taudul
c6bb08355c Allow specification of port through env variable. 2020-03-08 16:14:36 +01:00
Bartosz Taudul
1da62c2190 Send deferred lock names. 2020-03-08 15:05:35 +01:00
Bartosz Taudul
127224acc6 Send listen port in broadcast message. 2020-03-08 14:37:59 +01:00
Bartosz Taudul
14c896573d Separate config for data and broadcast port. 2020-03-08 14:34:09 +01:00
Bartosz Taudul
2ffaa88c9e Fix typo. 2020-03-08 14:19:08 +01:00
Bartosz Taudul
e7240cb77d Custom lock name transfer. 2020-03-08 13:47:38 +01:00
Bartosz Taudul
f945278959 Fix rpmalloc on android. 2020-03-02 17:10:47 +01:00
Bartosz Taudul
c36ed4b8b8 Boring warning fixes. 2020-03-01 01:48:20 +01:00
Bartosz Taudul
c23984dd6a Fix static assert in rpmalloc. 2020-03-01 01:31:31 +01:00
Bartosz Taudul
e9a32d5dc7 Greatly increase queue block size.
Previous block size could hold only 256 elements (8KB), which stressed
out the memory allocator. Storing 65536 elements (2MB) per block almost
completely reduces the allocator pressure.
2020-03-01 01:15:13 +01:00
Bartosz Taudul
82f463724c Update rpmalloc to 1.4.0.
Notable changes: use C++11 atomics everywhere.
2020-03-01 01:02:25 +01:00
Bartosz Taudul
710a2a64e4 Fix copy pasta. 2020-02-27 14:08:56 +01:00
Bartosz Taudul
4346620afa No need to copy module name. 2020-02-27 13:45:39 +01:00
Bartosz Taudul
fd8a9465d4 Cosmetics. 2020-02-27 13:40:41 +01:00
Bartosz Taudul
9ae71ac4ee Dl_info doesn't destroy data. 2020-02-27 13:28:45 +01:00
Bartosz Taudul
5f6b3d2cd5 No need for module name intermediate buffer. 2020-02-27 13:24:36 +01:00
Bartosz Taudul
474383b656 Only copy symbol strings, if needed. 2020-02-27 13:17:26 +01:00
Bartosz Taudul
2df6f9068a Don't retrieve symbol name for address. 2020-02-27 12:58:01 +01:00
Bartosz Taudul
be5793987e Don't send symbol name. 2020-02-27 12:49:48 +01:00
Bartosz Taudul
56dce646cc Symbol address decoding on unix. 2020-02-26 23:38:04 +01:00
Bartosz Taudul
4ddafdeeaf Symbol address decoding for old androids. 2020-02-26 23:24:18 +01:00
Bartosz Taudul
7c506d5426 Remove unused variables. 2020-02-26 23:24:11 +01:00
Bartosz Taudul
26cee8acf0 Perform symbol information queries. 2020-02-26 22:35:15 +01:00
Bartosz Taudul
ef05570540 Symbol address decoding (win32 implementation). 2020-02-26 22:32:42 +01:00
Bartosz Taudul
03ff08a934 Increase max name size. 2020-02-26 22:32:09 +01:00
Bartosz Taudul
d1fcf80c2d Move definition of max symbol name size to one place. 2020-02-26 22:30:11 +01:00
Bartosz Taudul
c0f49c648b Validate size. 2020-02-26 22:27:10 +01:00
Bartosz Taudul
890cec9872 Retrieve symbol addresses on unix. 2020-02-26 02:25:45 +01:00
Bartosz Taudul
9231261d73 Retrieve image name on unix. 2020-02-26 02:11:51 +01:00
Bartosz Taudul
fe80a7ed46 Retrieve symbol address on old androids. 2020-02-26 02:06:44 +01:00
Bartosz Taudul
abf8c42a7c Send module name. 2020-02-26 00:33:09 +01:00
Bartosz Taudul
7d0dac9ae2 Store callstack frame module name. 2020-02-26 00:32:47 +01:00
Bartosz Taudul
4cf520db93 Unify copying symbol strings. 2020-02-26 00:02:30 +01:00
Bartosz Taudul
c5b2d14f8c Send sampling period in welcome message. 2020-02-25 23:12:31 +01:00
Bartosz Taudul
2b7f5091f1 Store sampling period. 2020-02-25 23:08:52 +01:00
Bartosz Taudul
3402d16548 Send symbol base address. 2020-02-25 23:03:40 +01:00
Bartosz Taudul
85ffe0ea04 Don't search module list for kernel addresses. 2020-02-24 23:04:53 +01:00
Bartosz Taudul
ece32b47df Zero capacity is invalid. 2020-02-24 23:04:53 +01:00
Bartosz Taudul
9c9e854005 Replace list with vector.
Maybe next time let's not forget that there's already a custom
allocating vector available.
2020-02-24 23:04:53 +01:00
Bartosz Taudul
24cd73e366 Fix linux tracing with long pids. 2020-02-23 18:23:53 +01:00