mcaleavya [Wed, 17 Feb 2016 22:12:44 +0000 (22:12 +0000)]
migrated statsnoop to use bpf_perf_event_output
mcaleavya [Wed, 17 Feb 2016 22:04:14 +0000 (22:04 +0000)]
Merge branch 'master' of https://github.com/mcaleavya/bcc-1
4ast [Wed, 17 Feb 2016 15:16:46 +0000 (07:16 -0800)]
Merge pull request #392 from iovisor/fix_perf_buffer
Fix breakage in open_perf_buffer
Brenden Blanco [Wed, 17 Feb 2016 08:26:14 +0000 (00:26 -0800)]
Fix breakage in open_perf_buffer
The previous commit for splitting table.py into a separate file lost
some required imports. Add those back.
In addition, add a test for open_perf_buffer, and take out the
compile-time check in libbpf.c for this feature.
I couldn't think of a good way to fix the PERF_COUNT_SW_BPF_OUTPUT
literal, so for now left it as a comment. A #define wouldn't work since
the eventual value comes from an enum (no #ifndef/#define/#endif
pattern).
Fixes: #391 #363
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Wed, 17 Feb 2016 01:16:15 +0000 (17:16 -0800)]
Merge pull request #390 from iovisor/tables_cleanup
Cleanup tables classes in bcc python module
Brenden Blanco [Tue, 16 Feb 2016 16:36:26 +0000 (17:36 +0100)]
Support native integer indexing in table.Array type
Improve the indexing in the Array class to be more like native python
list/array types. No need to use `t[c_int(0)]`, instead `t[0]` is
sufficient, for instance.
Add tests for the above. Relies on a new bpf_module function for
exposing the max_entries property of a table in order to range-check the
indices.
In one case, array was using a struct key type.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 16 Feb 2016 14:58:58 +0000 (15:58 +0100)]
Split bcc.table.BPFTable into multiple type-specific classes
BPFTable contained all of the logic for multiple table types, which is
incorrect since a bpf table has either hash or array behavior.
Additionally, some methods on the classes aren't valid for some table
types. Create HashTable, Array, ProgArray, and PerfEventArray classes to
contain this behavior.
In future, the new Array class and its children should behave more like
an array than a dict as it currently does.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Brenden Blanco [Tue, 16 Feb 2016 13:54:39 +0000 (14:54 +0100)]
Split bcc/__init__.py into multiple files
The subclasses and some of the imports inside __init__.py were getting
overly large, so start to split some of the functionality into different
files.
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
4ast [Tue, 16 Feb 2016 18:03:18 +0000 (10:03 -0800)]
Merge pull request #384 from mmlb/patch-1
fix couple of minor typos
4ast [Tue, 16 Feb 2016 14:59:18 +0000 (06:59 -0800)]
Merge pull request #388 from brendangregg/master
2 tools: btrfsdist, btrfsslower
Brendan Gregg [Tue, 16 Feb 2016 06:24:02 +0000 (22:24 -0800)]
btrfsdist
Brendan Gregg [Tue, 16 Feb 2016 06:22:19 +0000 (22:22 -0800)]
btrfsslower
4ast [Tue, 16 Feb 2016 01:11:38 +0000 (17:11 -0800)]
Merge pull request #386 from brendangregg/master
inline C in /tools
Brendan Gregg [Mon, 15 Feb 2016 23:55:08 +0000 (15:55 -0800)]
inline C in /tools
Manuel Mendez [Mon, 15 Feb 2016 22:08:23 +0000 (17:08 -0500)]
fix couple of minor typos
4ast [Mon, 15 Feb 2016 09:22:16 +0000 (09:22 +0000)]
Merge pull request #383 from brendangregg/master
3 tools: tcpretrans, zfsslower, zfsdist
Brendan Gregg [Mon, 15 Feb 2016 07:31:14 +0000 (23:31 -0800)]
better titles for dist tools
Brendan Gregg [Mon, 15 Feb 2016 07:14:12 +0000 (23:14 -0800)]
zfsdist
Brendan Gregg [Mon, 15 Feb 2016 07:13:13 +0000 (23:13 -0800)]
zfsslower
Brendan Gregg [Mon, 15 Feb 2016 02:22:57 +0000 (18:22 -0800)]
docs link typo
Brendan Gregg [Mon, 15 Feb 2016 02:16:06 +0000 (18:16 -0800)]
tool list alphabetical order
Brendan Gregg [Mon, 15 Feb 2016 02:15:24 +0000 (18:15 -0800)]
tcpretrans
4ast [Mon, 15 Feb 2016 00:45:38 +0000 (00:45 +0000)]
Merge pull request #381 from brendangregg/master
tcp to bpf_perf_output
Brendan Gregg [Mon, 15 Feb 2016 00:32:29 +0000 (16:32 -0800)]
tcp to bpf_perf_output
4ast [Sun, 14 Feb 2016 16:35:33 +0000 (17:35 +0100)]
Merge pull request #379 from goldshtn/cosmetic
Cosmetic changes: removed .py suffix, fixed link in README
Sasha Goldshtein [Sun, 14 Feb 2016 16:32:54 +0000 (08:32 -0800)]
Fixed typo
Sasha Goldshtein [Sun, 14 Feb 2016 15:53:59 +0000 (07:53 -0800)]
Renamed to *_example.txt and fixed README again
Sasha Goldshtein [Sun, 14 Feb 2016 14:56:07 +0000 (06:56 -0800)]
Cosmetic changes: removed .py suffix, fixed link in README
4ast [Sun, 14 Feb 2016 13:34:23 +0000 (14:34 +0100)]
Merge pull request #377 from goldshtn/argdist-tuples
Enhancements to argdist
Sasha Goldshtein [Sun, 14 Feb 2016 13:12:27 +0000 (05:12 -0800)]
Added small list of automatic includes to make the -I switch less necessary
Sasha Goldshtein [Sun, 14 Feb 2016 11:57:06 +0000 (13:57 +0200)]
Merge branch 'master' into argdist-tuples
Sasha Goldshtein [Sun, 14 Feb 2016 11:49:01 +0000 (03:49 -0800)]
Fixed bug with labels, added support for tuples in hash
4ast [Sun, 14 Feb 2016 10:53:38 +0000 (11:53 +0100)]
Merge pull request #376 from brendangregg/master
mdflush
Sasha Goldshtein [Sun, 14 Feb 2016 07:14:18 +0000 (23:14 -0800)]
Improved error messages for invalid probe syntax, added -I switch to add include files, fixed bug with labels -- now using # to indicate label
Brendan Gregg [Sun, 14 Feb 2016 05:07:23 +0000 (21:07 -0800)]
mdflush
Sasha Goldshtein [Sat, 13 Feb 2016 11:58:21 +0000 (03:58 -0800)]
Merge branch 'master' into argdist-enh
Sasha Goldshtein [Sat, 13 Feb 2016 11:56:29 +0000 (03:56 -0800)]
Finalized $entry, $latency, and $retval implementation including examples and man
4ast [Sat, 13 Feb 2016 10:14:06 +0000 (11:14 +0100)]
Merge pull request #371 from brendangregg/master
ext4 and xfs tools
Allan McAleavy [Sat, 13 Feb 2016 00:44:23 +0000 (00:44 +0000)]
Merge pull request #3 from iovisor/master
update local with changes from master
Brenden Blanco [Sat, 13 Feb 2016 00:28:57 +0000 (01:28 +0100)]
Merge pull request #372 from mcaleavya/master
migrated biosnoop and bashreadline to use bpf_perf_event_output
mcaleavya [Fri, 12 Feb 2016 23:43:14 +0000 (23:43 +0000)]
style updates
mcaleavya [Fri, 12 Feb 2016 23:19:11 +0000 (23:19 +0000)]
changed key struct to data as requested
mcaleavya [Fri, 12 Feb 2016 23:06:53 +0000 (23:06 +0000)]
added spaces and tidyup of biosnoop
mcaleavya [Fri, 12 Feb 2016 20:10:59 +0000 (20:10 +0000)]
updated man pages
mcaleavya [Fri, 12 Feb 2016 20:06:38 +0000 (20:06 +0000)]
added new files for biosnoop and bashreadline
mcaleavya [Fri, 12 Feb 2016 20:04:35 +0000 (20:04 +0000)]
reworking of biosnoop and bashreadline to use bf_perf_event_output. Also moved old versions to tools/old
Sasha Goldshtein [Fri, 12 Feb 2016 19:14:20 +0000 (11:14 -0800)]
Added (paramname) support
Brendan Gregg [Fri, 12 Feb 2016 16:20:33 +0000 (08:20 -0800)]
Merge branch 'master' into master
Brendan Gregg [Fri, 12 Feb 2016 16:20:07 +0000 (08:20 -0800)]
Merge pull request #369 from goldshtn/alloc-hist
argdist.py: Trace a function and its parameters into a histogram or frequency count
Sasha Goldshtein [Fri, 12 Feb 2016 14:52:19 +0000 (06:52 -0800)]
Updated man and examples with new probe syntax and command-line switches
Allan McAleavy [Fri, 12 Feb 2016 12:45:58 +0000 (12:45 +0000)]
Merge pull request #2 from iovisor/master
update local repo
Sasha Goldshtein [Fri, 12 Feb 2016 11:04:53 +0000 (03:04 -0800)]
Added optional label, fixed inline examples
Brendan Gregg [Fri, 12 Feb 2016 10:29:08 +0000 (02:29 -0800)]
ext4dist
Brendan Gregg [Fri, 12 Feb 2016 10:27:19 +0000 (02:27 -0800)]
ext4slower
Brendan Gregg [Fri, 12 Feb 2016 10:25:32 +0000 (02:25 -0800)]
xfsdist
Brendan Gregg [Fri, 12 Feb 2016 10:23:39 +0000 (02:23 -0800)]
xfsslower
Sasha Goldshtein [Fri, 12 Feb 2016 09:29:39 +0000 (01:29 -0800)]
Renamed to argdist.py, updated command-line switches, added kernel probe pid filtering, added verbose mode that prints the BPF program
Sasha Goldshtein [Thu, 11 Feb 2016 19:34:49 +0000 (11:34 -0800)]
Added tool to README
Sasha Goldshtein [Thu, 11 Feb 2016 19:30:49 +0000 (11:30 -0800)]
Merge branch 'master' into alloc-hist
Sasha Goldshtein [Thu, 11 Feb 2016 19:30:13 +0000 (11:30 -0800)]
Merge remote-tracking branch 'origin/master' into alloc-hist
Sasha Goldshtein [Thu, 11 Feb 2016 19:26:48 +0000 (11:26 -0800)]
Added license (Apache)
Sasha Goldshtein [Thu, 11 Feb 2016 19:21:01 +0000 (11:21 -0800)]
Added man page, reshuffled some options
Sasha Goldshtein [Thu, 11 Feb 2016 10:17:22 +0000 (02:17 -0800)]
Added ret probes
Sasha Goldshtein [Thu, 11 Feb 2016 09:55:11 +0000 (01:55 -0800)]
Implemented histogram functionality, including strings; added examples
Brenden Blanco [Thu, 11 Feb 2016 06:46:16 +0000 (07:46 +0100)]
Merge pull request #360 from brendangregg/master
3 tools: oomkill, dcstat, dcsnoop
Brenden Blanco [Thu, 11 Feb 2016 06:43:29 +0000 (07:43 +0100)]
Merge pull request #362 from goldshtn/memleak-enh
Enhancements to memleak.py
Brendan Gregg [Thu, 11 Feb 2016 06:32:03 +0000 (22:32 -0800)]
fix for spaces in filenames, #361
Sasha Goldshtein [Thu, 11 Feb 2016 06:17:26 +0000 (22:17 -0800)]
Added license (Apache), merged memleak.c into memleak.py
Sasha Goldshtein [Thu, 11 Feb 2016 06:10:42 +0000 (22:10 -0800)]
Merge branch 'master' into memleak-enh
Sasha Goldshtein [Thu, 11 Feb 2016 06:10:09 +0000 (22:10 -0800)]
Initial version of gentrace with raw counting only
Brendan Gregg [Thu, 11 Feb 2016 01:39:56 +0000 (17:39 -0800)]
Merge branch 'master' into master
Brendan Gregg [Thu, 11 Feb 2016 00:38:18 +0000 (16:38 -0800)]
save one bpf_probe_read()
Brendan Gregg [Thu, 11 Feb 2016 00:34:22 +0000 (16:34 -0800)]
copy-n-paste man page error
Brendan Gregg [Thu, 11 Feb 2016 00:33:12 +0000 (16:33 -0800)]
use bpf_perf_event_output() instead
Brenden Blanco [Wed, 10 Feb 2016 23:54:40 +0000 (00:54 +0100)]
Merge pull request #368 from iovisor/runqlat-fix
Fix for improper includes in runqlat.py
Brenden Blanco [Wed, 10 Feb 2016 23:42:16 +0000 (15:42 -0800)]
Fix for improper includes in runqlat.py
Fixes: #367
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Sasha Goldshtein [Wed, 10 Feb 2016 16:35:20 +0000 (08:35 -0800)]
Added -z and -Z switches for filtering by size, added copyright notices
Brendan Gregg [Wed, 10 Feb 2016 09:38:32 +0000 (01:38 -0800)]
dcsnoop
Brendan Gregg [Wed, 10 Feb 2016 09:36:51 +0000 (01:36 -0800)]
dcstat
Brendan Gregg [Wed, 10 Feb 2016 09:34:53 +0000 (01:34 -0800)]
oomkill
Sasha Goldshtein [Tue, 9 Feb 2016 19:18:32 +0000 (11:18 -0800)]
Updated examples to show timestamp output for each message
Sasha Goldshtein [Tue, 9 Feb 2016 19:15:41 +0000 (11:15 -0800)]
Added option to display only top N stacks by size
4ast [Tue, 9 Feb 2016 14:40:57 +0000 (15:40 +0100)]
Merge pull request #358 from brendangregg/master
updates and 3 tools: statsnoop, filelife, filetop
Sasha Goldshtein [Tue, 9 Feb 2016 14:24:33 +0000 (06:24 -0800)]
Fixed long arg name from stack_depth to stack-depth
Sasha Goldshtein [Tue, 9 Feb 2016 14:23:10 +0000 (06:23 -0800)]
Added --stack-depth switch to control the number of stack frames captured for each allocation
Sasha Goldshtein [Tue, 9 Feb 2016 14:03:46 +0000 (06:03 -0800)]
Updated manual, examples, and usage with new interval and count options
Sasha Goldshtein [Tue, 9 Feb 2016 13:53:48 +0000 (05:53 -0800)]
Added interval and count options per *stat tool conventions
Brendan Gregg [Tue, 9 Feb 2016 08:37:12 +0000 (00:37 -0800)]
inspiration section for biotop
Brendan Gregg [Tue, 9 Feb 2016 08:36:43 +0000 (00:36 -0800)]
filetop.8
Brendan Gregg [Tue, 9 Feb 2016 08:32:51 +0000 (00:32 -0800)]
filelife
Brendan Gregg [Tue, 9 Feb 2016 08:31:24 +0000 (00:31 -0800)]
statsnoop
Brendan Gregg [Tue, 9 Feb 2016 08:28:43 +0000 (00:28 -0800)]
missing options section on biotop
Brendan Gregg [Tue, 9 Feb 2016 08:28:09 +0000 (00:28 -0800)]
makes more sense to invert the -X usage
Brenden Blanco [Mon, 8 Feb 2016 21:51:26 +0000 (22:51 +0100)]
Merge pull request #355 from goldshtn/master
New tool: memleak
Brenden Blanco [Mon, 8 Feb 2016 21:30:19 +0000 (22:30 +0100)]
Merge pull request #353 from brendangregg/master
3 tools: fsslower, execsnoop, runqlat
Brendan Gregg [Mon, 8 Feb 2016 15:50:33 +0000 (07:50 -0800)]
mecs typo
4ast [Mon, 8 Feb 2016 14:34:44 +0000 (15:34 +0100)]
Merge pull request #357 from iovisor/prandom
Add bpf_get_prandom_u32 to helpers
Brenden Blanco [Mon, 8 Feb 2016 14:22:23 +0000 (15:22 +0100)]
Add bpf_get_prandom_u32 to helpers
Signed-off-by: Brenden Blanco <bblanco@plumgrid.com>
Sasha Goldshtein [Mon, 8 Feb 2016 13:48:31 +0000 (05:48 -0800)]
Added -s switch to perform allocation sampling
Sasha Goldshtein [Mon, 8 Feb 2016 12:05:48 +0000 (04:05 -0800)]
Added memleak.py to README