Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
251 commits
Select commit Hold shift + click to select a range
b34a3e1
libbpf-tools/profile: Fix incorrect condition in if statement
ekyooo Aug 9, 2024
c18e5f1
libbpf-tools/profile: Add additional information to backtrace for -v …
ekyooo Aug 9, 2024
8cc2956
tools/wakeuptime: Add offset to kernel stack trace
ekyooo Aug 13, 2024
503b5d1
Fix larchintrin.h not found error for loongarch64
zhangzikang01 Aug 14, 2024
90df172
tools/readahead: Add filemap_alloc_folio_noprof() support
Rtoax Aug 15, 2024
a8a4c4a
tools/shmsnoop: Print shmctl command string
Rtoax Aug 15, 2024
d5d012d
fix typo in example
luijianfie Sep 3, 2024
52268f4
libbpf-tools: Add flag `-Werror=undef`
ShawnZhong Aug 24, 2024
d75beba
libpf-tools/readahead: Fix attachment failure since v5.16 (#5086)
ShawnZhong Sep 3, 2024
73021e0
offcputime: Support tracking specified processes and threads
Aug 29, 2024
10250eb
Fix a compilation issue with llvm20
Sep 4, 2024
3bea178
Set cpu=v1 explicitly
Sep 4, 2024
0cf2569
Pid namespace support (#5101)
pagict Sep 8, 2024
e9f4191
Remove unneeded error.h include to allow build with musl libc (#5105)
hhoffstaette Sep 28, 2024
7dc4265
libbpf-tools/profile: Fix the help message for multi process/thread
ekyooo Sep 26, 2024
04f0dce
libbpf-tools/offcputime: Add multi process/thread support
ekyooo Sep 16, 2024
be3f211
libbpf-tools/trace_helpers: Add a utility to split and convert string
ekyooo Sep 26, 2024
afaf16a
libbpf-tools/profile: Remove unnecessary parameter
Bojun-Seo Oct 8, 2024
f34915a
libbpf-tools/softirqs: Add `-c/--cpu` option to filter cpu
ZhangYet Sep 13, 2024
b84c376
libbpf-tools/hardirqs: add `--cpu/-s` for hardirqs
ZhangYet Sep 14, 2024
e0036ad
tools/tcpcong: Reduce code redundancy
kknjh Oct 13, 2024
d42eaf0
Add support for zfs to fsdist and fsslower tools
kknjh Oct 21, 2024
c84256e
elf: Detect if Elf is PIE
Rtoax Oct 27, 2024
de401e9
tools: Add # at the beginning of example command
Bojun-Seo Nov 7, 2024
ee4c54b
tools: Fixes typo in biolatency_example.txt file
Bojun-Seo Nov 7, 2024
f7e843e
tools/threadsnoop: Add -h option
Bojun-Seo Nov 7, 2024
9ea3bcb
tools: Fixes explanation about -F option in biolatency_example.txt
Bojun-Seo Nov 7, 2024
b776cab
tools/softirqs: Print results in descending order
Bojun-Seo Nov 7, 2024
9132007
libbpf-tools: Fix compilation error for gethostlatency
chenhengqi Oct 17, 2024
838dd94
libbpf-tools: Allow offcputime to run on kernels without BPF trampoline
chenhengqi Oct 17, 2024
bb3aecb
Add filters to filetop (#5003)
Hannibal404 Nov 14, 2024
80928a2
libbpf-tools/memleak: mmap allocation failed, not added to pointer ma…
cppcoffee Nov 14, 2024
3ca9d16
Add sys.stdout.flush() during print (#5142)
ikicha Nov 18, 2024
e5b44da
tools/cachestat,cachetop: Fix add_to_page_cache_lru/mark_page_accesse…
xingfeng2510 Nov 18, 2024
60f8e80
libbpf-tools/memleak: Fix to handle failure for invalid arguments (#5…
ekyooo Nov 18, 2024
6ddc341
tools/hardirqs: Print results in descending order (#5148)
Bojun-Seo Nov 22, 2024
5c97d9e
libbpf-tools/memleak: add mremap uprobe (#5151)
cppcoffee Nov 23, 2024
a579962
libbpf-tools: javagc: Hints for more information (#5154)
Rtoax Nov 23, 2024
20fdf90
Fix LLVM-20 compilation failure (#5155)
yonghong-song Nov 23, 2024
e6a080b
bpf: Sync with latest libbpf repo (#5156)
yonghong-song Nov 24, 2024
47e548c
Update debian changelog for release v0.32.0 (#5157)
yonghong-song Nov 24, 2024
2acd2f9
libbpf-tools/memleak: Fixes off-by-one error for `-Z` and `-z` option…
Bojun-Seo Dec 1, 2024
91e7007
examples/networking: sockmap.py: Fix invalid bpf_context access off=2…
Rtoax Dec 17, 2024
e0bbb99
docs: fix a minor typo. (#5173)
MercuryLc Dec 17, 2024
eac0791
libbpf-tools/slabratetop: Fix failed to create kprobe error (#5168)
kknjh Dec 18, 2024
540f674
tools/oomkill: get application lvl stack trace (#5166)
saiaunghlyanhtet Dec 18, 2024
0ca8340
libbpf-tools/profile: Add support for PID-namespacing
ekyooo Nov 20, 2024
121a44e
libbpf-tools/trace_helpers: Add helper to probe bpf_get_ns_current_pi…
ekyooo Dec 13, 2024
792c2fb
libbpf_tools/profile: Support PID namespace mapping if available in t…
ekyooo Nov 21, 2024
51108bc
tools/ttysnoop: Fix a minor typo (#5175)
keosung Dec 18, 2024
54c9dd3
tools/klockstat: Remove Byte String Prefix in Output (#5179)
TwilightTechie Jan 8, 2025
d799ef4
libbpf-tools/mountsnoop: Use union to pass arguments
Rtoax Dec 20, 2024
9a45f6c
libbpf-tools/mountsnoop: Support fsopen,fsconfig,fsmount,move_mount s…
Rtoax Dec 20, 2024
79bb83e
tools/profile: Add additional information to backtrace (#5109)
ekyooo Jan 8, 2025
4f8be9c
tools/mountsnoop: Fix fsmount printing wrong flags (#5178)
Rtoax Jan 8, 2025
bb893c7
tools: add numasched: trace task switch between NUMA (#4396)
Rtoax Jan 9, 2025
3665a00
README.md: Add tools/numasched contents (#5187)
Rtoax Jan 12, 2025
21a523c
tools/compactsnoop: Add aarch64 support (#5180)
kknjh Jan 12, 2025
a956f16
syms: Initialize ModulePath::fd_ to invalid FD
danobi Jan 17, 2025
6e415fd
Fix llvm20 compilation error (#5194)
yonghong-song Jan 19, 2025
1716963
Update debian changelog for release v0.33.0 (#5195)
yonghong-song Jan 19, 2025
64c2849
tools/cpuunclaimed: Remove unused python method imports (#5189)
kiraskyler Jan 22, 2025
507b5f0
INSTALL.md: Add build dependencies for Ubuntu 24.04 (#5199)
jetlime Jan 22, 2025
939876e
Drop support for LLVM 10 and below (#5202)
chenhengqi Jan 27, 2025
fde3870
tools/opensnoop: Display mode for -e, --extended_fields (#5196)
Rtoax Feb 1, 2025
df1746c
tools/opensnoop: Fix bad mode value (#5205)
Rtoax Feb 9, 2025
5f825a3
libbpf-tools/opensnoop: Display mode for extended fields (#5206)
Rtoax Feb 9, 2025
9deb93c
libbpf-tools/hardirqs: Fix logarithmic calculation issue (#5207)
kknjh Feb 9, 2025
e038785
examples/tracing/disksnoop.py: Fix kprobe attaching failure (#5209)
we3i Feb 9, 2025
b2d746a
libbpf-tools/softirqs: Fix logarithmic calculation issue (#5208)
kknjh Feb 11, 2025
77ef320
bcc-lua: enable deterministic bytecode generation (#5213)
wfrisch Feb 15, 2025
b3d18f1
New examples/tracing/setuid_monitor.py: Fix #5211 (#5215)
we3i Feb 21, 2025
ce1df0a
tools/profile: Prioritize using the cpu-cycles hardware event (#5214)
xingfeng2510 Feb 21, 2025
e4cfda9
libbpf-tools/klockstat: Search for correct stack offset in userspace …
tohojo Feb 27, 2025
e6e0f06
tcp_drop() not findable is an error.
seizethedave Mar 1, 2025
3ca16d0
libbpf-tools: signoop: Support real-time signals (#5216)
Rtoax Mar 3, 2025
c669a7e
examples/tracing/bitehist.py: Fix kprobe attaching failure (#5223)
we3i Mar 3, 2025
1ddf34c
libbpf-tools/statsnoop: Display syscall name with -s
Rtoax Mar 8, 2025
a63e446
tools/statsnoop: Add -s to display syscall name (#5227)
Rtoax Mar 14, 2025
9b96eaf
libbpf-tools/klockstat: Track netlink message types when taking locks…
tohojo Mar 15, 2025
4898010
libbpf-tools: statsnoop: Support fstat(2) and parse fd/dirfd in users…
Rtoax Mar 20, 2025
eddf5a7
libbpf-tools:Fix bitesize dependency on kernel version (#5234)
kiraskyler Mar 20, 2025
bfc40ea
libbpf-tools/memleak: Add options to adjust stack map size (#5237)
ekyooo Mar 20, 2025
0a059d8
tools/sslsniff: implement custom min to avoid non-static (#5242)
adrianlzt Mar 21, 2025
87cca29
Bump CMake minimum version to 3.12 (#5245)
shunghsiyu Mar 21, 2025
d6b087d
libbpf-tools:Fix biosnoop dependency on kernel version (#5244)
kiraskyler Mar 21, 2025
744d1cd
tools/sofdsnoop: implement custom min to avoid non-static (#5247)
adrianlzt Mar 21, 2025
ef299ed
libbpf-tools/memleak: Fix output error for invalid stackid when using…
ekyooo Mar 21, 2025
0695df5
libbpf-tools/memleak: Allocate map and calculate statistics only when…
ekyooo Mar 21, 2025
3b8636b
libbpf-tools/memleak: Change the start message to match memleak pytho…
ekyooo Mar 21, 2025
90b821f
tools/criticalstat: Update error message with kernel version-specific…
ismhong Mar 21, 2025
96906eb
tcpdrop: fix unexpected exit if tcp_drop() missing
ioworker0 Mar 23, 2025
64d6f83
klockstat: Track IOCTL numbers
tohojo Mar 25, 2025
ecda4e2
klockstat: Don't crash on NULL ksym when looping over stack
tohojo Mar 26, 2025
487525f
tcpdrop: add support for dumping TCP drop reasons
ioworker0 Mar 23, 2025
556034d
libbpf-tools/tcptracer: Remove unused parameter 'ctx' (#5253)
yu410621 Mar 29, 2025
024394f
bcc: Sync with latest libbpf repo
chenhengqi Mar 27, 2025
72df180
libbpf-tools: Update vmlinux.h for all supported arch
chenhengqi Mar 27, 2025
7277b9f
libbpf-tools: Adapt runqlen for struct field renaming
chenhengqi Mar 27, 2025
b301aa4
libbpf-tools: statsnoop: Missing dirfd check
Rtoax Mar 25, 2025
461d495
libbpf-tools/readahead: Fix low page usage count since v5.15 (#5257)
B106Roger Apr 1, 2025
f336099
libbpf-tools: syscall_helpers.c: support loongarch64 and add more gen…
Rtoax Apr 1, 2025
6ba4725
tools/sofdsnoop: Add argument "--ebpf" (#5262)
yu410621 Apr 1, 2025
fc0457e
tools/readahead: Fix incorrect page accessed count since v5.16 (#5266)
ismhong Apr 3, 2025
b154aad
libbpf-tools: syscall_helpers.c: Fix incorrect syscall name (#5264)
Rtoax Apr 3, 2025
5a201be
libbpf-tools/drsnoop: Fix typo
ekyooo Apr 7, 2025
fad6237
libbpf-tools: sigsnoop: display target process's comm (#5272)
Rtoax Apr 11, 2025
b21c73c
Fix event name too long error in python source (#5271)
kknjh Apr 11, 2025
49fff09
libbpf-tools: llcstat: Fix error: redefinition of 'key_info' on aarch…
Rtoax Apr 11, 2025
99685b3
hardirqs: Optimize output information and increase CPU display (#5228)
kknjh Apr 11, 2025
c87a05f
Fix llvm compilation failure (#5276)
yonghong-song Apr 11, 2025
3a94d49
Adapt to gcc 7.3.0 std::string.replace() (#5275)
Rtoax Apr 11, 2025
d4e6ed3
Update debian changelog for release v0.34.0 (#5277)
yonghong-song Apr 11, 2025
74fbe6f
fix typo in "*precpu* cgroup storage"
tanelpoder Apr 16, 2025
7ffe525
Sync with latest libbpf repo
Amaindex Apr 27, 2025
98b82e7
fix typo in reference_guide.md
shubhe25p Apr 27, 2025
f653964
libbpf-tools: Fix the issue of unreleased resources
kknjh Apr 30, 2025
669ea17
BCC: libbpf: add an interface 'kernel_enum_has_val'
Dwyane-Yan Apr 14, 2025
d6dbf09
BCC: Python: Support 'fmod_ret' method for eBPF
Dwyane-Yan Apr 5, 2025
78cefdb
BCC: python: add a useful tool for mptcp
Dwyane-Yan Apr 17, 2025
9c005d8
Use ubuntu 24.04 and fedora 41 for CI testing (#5301)
yonghong-song May 12, 2025
055577a
Use correct nickname for github publish-build-containers.yml (#5305)
yonghong-song May 12, 2025
fb826a2
bcc: import subprocess in __init__.py
seehearfeel May 17, 2025
587ef02
tools/biosnoop: Fix biosnoop pattern option (#5304)
jeromemarchand May 17, 2025
2a3050c
Delete outdated comment (INSTALL.md; Ubuntu) (#5308)
JOE1994 May 17, 2025
5257496
tests/python: support finish_task_switch.isra.* (#5302)
bin-101 May 17, 2025
76de0a7
Fix running cmake outside of the source subtree (#5299)
iii-i May 18, 2025
93e073b
clang: Define DCONFIG_CC_IS_CLANG in KBuildHelper::get_flags() (#5172…
jeromemarchand May 18, 2025
4bc750b
bcc: Fix for test bpf_stack_id when running on custom image in yocto …
harishsadineni1 May 18, 2025
a6ff920
libbpf-tools/map_helpers: Add bpf_map_lookup_and_delete_batch to dump…
ekyooo Apr 23, 2025
4e62c21
libbpf-tools/biotop: Use dump_hash for map processing
ekyooo Apr 23, 2025
a0fe0ef
uninstall: use execute_process() instead of exec_program() (#5285)
Rtoax May 18, 2025
9415f18
Revert "Use correct nickname for github publish-build-containers.yml …
May 18, 2025
230a630
Revert "Use ubuntu 24.04 and fedora 41 for CI testing (#5301)"
May 18, 2025
4d7bd2c
ci: Upgrade ubuntu 20.04 to 24.04 (#5311)
yonghong-song May 19, 2025
5605d22
Fix the issue where xfsslower cannot track write operations on files …
KylinsecWuGeng May 19, 2025
c5ae7c8
ci: Install python3-setuptools for ubuntu 24.04 (#5312)
yonghong-song May 19, 2025
ca45b61
libbpf-tools/memleak: Extract print_headers (#5313)
ekyooo May 20, 2025
ffcfdbb
clang: Fix pointer dereference on big-endian machines (#5287)
sumanthkorikkar May 20, 2025
12c0c62
Add missing install dependencies to INSTALL.md (#5319)
x746e May 29, 2025
bbe17c9
Sync with latest libbpf repo (#5320)
yonghong-song May 30, 2025
6f81cb5
Update debian changelog for release v0.35.0 (#5321)
yonghong-song May 30, 2025
2440bf1
Doc/dead links (#5322)
Phoenix500526 Jun 7, 2025
0dc27a1
Added functionality to detach all uprobes for a binary (#5325)
aayush-ap Jun 8, 2025
be6a886
libbpf-tools: opensnoop: add full-path argument -F (#5323)
Rtoax Jun 12, 2025
c59d85c
removing luajit options to ensure no errors will be thrown when runni…
isabert Jun 12, 2025
d7bec87
libbpf-tools/offcputime: fix min or max_block_ns unit (#5327)
yunwei37 Jun 12, 2025
715bb30
fix typo in README.md (#5335)
charliechiou Jun 15, 2025
81daf9d
libbpf-tools/opensnoop: support mount full-path (#5333)
Rtoax Jun 15, 2025
db0d5bd
Bcc: mptcpify: add the NULL check for variable 'mode' (#5336)
Dwyane-Yan Jun 18, 2025
c203706
tools/opensnoop: one event is enough for full-path (#5334)
Rtoax Jun 21, 2025
b40320b
tools/opensnoop: support mount full-path (#5339)
Rtoax Jun 24, 2025
a8c6daa
libbpf-tools: Introduce path helpers
Rtoax Jun 22, 2025
4d3c083
libbpf-tools/filelife: support full-path
Rtoax Jun 22, 2025
3d89cd8
tools/runqlat: Dynamically size pid/pidns histogram map (#5342)
ismhong Jun 24, 2025
3212855
libbpf-tools/syscall_helpers: Modify syscall_name to return error cod…
ekyooo Jun 26, 2025
f4167f8
tools/filetop: Add directory filter (#5300)
srivathsa729 Jun 27, 2025
c1e6e33
libbpf-tools: Fix the license for newly added path* files (#5346)
yonghong-song Jun 30, 2025
1e4dc54
libbpf-tools: runqslower: add -c option to filter by process name prefix
Jun 10, 2025
36a8e46
net_monitor: fix typos in comments (#5360)
Jordymalone Jul 13, 2025
7268fba
libbpf-tools/filelife: Fix wrong full-path (#5347)
Rtoax Jul 13, 2025
4fb51e7
bcc: Fix for test tools_memleak.py (#5355)
hsadinen Jul 13, 2025
547b7eb
libbpf-tools/memleak: fix typo (#5358)
Bojun-Seo Jul 13, 2025
02dbb00
libbpf-tools/klockstat: Allows kprobe fallback to work with lock debu…
jeromemarchand Jul 13, 2025
796cb28
libbpf-tools: ksnoop: Fix two invalid access to map value (#5361)
Rtoax Jul 13, 2025
2a31635
Fix potential verification failure for opensnoop.py (#5364)
yonghong-song Jul 13, 2025
d4dfcb9
syscall_helpers.c / syscall.py: update syscall list (#5363)
stfnw Jul 13, 2025
28a4f6a
libbpf-tools/ksnoop: Remove useless and white lines (#5365)
Rtoax Jul 14, 2025
6c01dc9
Add support for executing a program and tracing it (#5362)
xingfeng2510 Jul 14, 2025
e0b4000
Cleanup CODEOWNERS file (#5368)
yonghong-song Jul 14, 2025
ecc12ee
tools/{biolatency,biosnoop,biotop}: use TRACEPOINT_PROBE() for tracep…
jeromemarchand Jul 15, 2025
0acb927
add descriptions for using pid in attach_uprobe and attach_uretprobe.…
Yuzhou-Fang Jul 15, 2025
13926a1
Fix a build failure with clang21 (#5369)
yonghong-song Jul 15, 2025
445009a
Add @ekyooo as the official bcc reviewer (#5372)
yonghong-song Jul 16, 2025
9be5031
libbpf-tools: trace_helpers: add str_loadavg() and str_timestamp()
Rtoax Jun 30, 2025
a55a57f
libbpf-tools/klockstat: Disable *_nested kprobes in the fentry code
jeromemarchand Jul 18, 2025
f8123c0
Update INSTALL.md (#5376)
vongosling Jul 23, 2025
e84fc0e
tools: add softirqslower (#5356)
chenyuezhou Jul 23, 2025
e44f965
tools/tcptop: Move original tcptop to old directory
Sutter099 Jul 20, 2025
6a05fc5
tools/tcptop: Use fentry/fexit for tcp_sendmsg
Sutter099 Jul 20, 2025
98be10c
tools/tcptop: unify send/recv stats in tcp_stat()
Sutter099 Jul 20, 2025
aa77583
tools/tcptop: use fentry/fexit to trace TCP receive
Sutter099 Jul 20, 2025
8b56bed
tools/solisten_example.txt: fix typo
Bojun-Seo Jul 28, 2025
dba7eed
tools/kvmexit: support amd processors
mtp401 Jul 28, 2025
ee5eb52
tools/kvmexit: implement parallel post processing
mtp401 Jul 28, 2025
3bff5fd
tools/kvmexit: reformat header to match other tools
mtp401 Jul 28, 2025
6658459
tools/kvmexit: silence compiler warnings
mtp401 Jul 28, 2025
2a50f93
python: tcp.py: add state2str() and apply to tools
Rtoax Jul 29, 2025
1555fdf
tools/tcpconnect: fix iov field for DNS with Linux>=6.4 (#5382)
flesueur Aug 6, 2025
1639fdf
Removing trailing white spaces and fixing typo (#5383)
Bojun-Seo Aug 6, 2025
2b2110c
libbpf-tools/biotop: Fix segmentation fault with musl libc build
Aug 26, 2025
822fc6c
doc: Fix the build guide for openSUSE (#5393)
HoyeonRhee Sep 1, 2025
597f49d
tools/filetop: fix DNAME_INLINE_LEN by folding to integer constant (#…
HoyeonRhee Sep 1, 2025
35a23c5
libbpf-tools: Fix list_syscalls() prototype return type
ismhong Sep 8, 2025
87af6f2
tools: return error code when no trace events matched
HoyeonRhee Sep 17, 2025
51d7128
tools: return error code when required kallsyms symbols are missing
HoyeonRhee Sep 17, 2025
1b1aff2
tools: return error code on invalid options
HoyeonRhee Sep 17, 2025
9d26d18
Avoid using deprecated string triple TargetRegistry overloads (#5401)
boomanaiden154 Oct 14, 2025
dd72199
libbpf-tools/javagc: Include usdt.bpf.h header
jeromemarchand Oct 7, 2025
7ceca41
re-generate syscall list (add file_getattr / file_setattr)
stfnw Oct 11, 2025
a3e8f0e
tools: Don't use the old bpf_probe_read() helper.
jeromemarchand Oct 7, 2025
c976019
tools/tcpaccept: Fix tcpaccept on recent kernel
jeromemarchand Oct 7, 2025
773018b
cc: support versioned SONAME in shared library resolution
HoyeonRhee Oct 23, 2025
582a9e8
tests: add coverage for versioned SONAME resolution
HoyeonRhee Oct 23, 2025
ddb99ea
tools/javaobjnew: Use MIN macro instead of min function
jeromemarchand Oct 9, 2025
705a78c
Add support for fuse to fsdist and fsslower tools
xixiliguo Nov 8, 2025
c17dfce
tools/offwaketime: Add raw tracepoint support to reduce overhead
JackZhao166 Nov 12, 2025
9038ee5
libbpf-tools/cpufreq: Print a more informative message when CPU Frequ…
jeromemarchand Nov 27, 2025
4d2e14f
libbpf-tools: filelife: Fix problem when using perf-buffer
Rtoax Dec 4, 2025
4d10abe
cmake: make version.cmake handle shallow clone
HoyeonRhee Oct 24, 2025
8cfc7af
tests/python: fix blk request probes tests
HoyeonRhee Nov 24, 2025
56ffd1f
tests/python: fix mm rss_stat access using percpu_counter layout
HoyeonRhee Nov 24, 2025
48d3951
tests/python: use __kmalloc_noprof for kprobe targets
HoyeonRhee Nov 25, 2025
18ec4a0
tests/python: only run btrfs/f2fs smoke test when loaded
HoyeonRhee Nov 25, 2025
7c3c327
tools: add missing exec bit to softirqslower.py
HoyeonRhee Nov 25, 2025
2e08651
Fix typo in print header for remote address
seizethedave Nov 10, 2025
8a555aa
Also fix typo in example.
seizethedave Nov 10, 2025
42e727f
Delete the element from the `starts` map after it has been used.
Oct 28, 2025
2efd5a6
libbpf-tools/syncsnoop: Add support for sync_file_range2 and arm_sync…
jeromemarchand Oct 6, 2025
88973a8
libbpf-tools/offcputime: Fix the unit conversion error
kknjh Jan 8, 2026
9aec901
tools: Prevent invalid mem access when reading PAGE_OFFSET on s390
jeromemarchand Dec 9, 2025
01c9754
Sync with latest libbpf repo
ekyooo Jan 14, 2026
ee6c123
Sync with latest blazesym repo
ekyooo Jan 15, 2026
0ae792a
Sync with latest bpftool repo
ekyooo Jan 16, 2026
8c6ff99
Update debian changelog for release v0.36.0
ekyooo Jan 23, 2026
647d315
Sync BCC with libbpf submodule update (afb8b17)
ekyooo Feb 2, 2026
794655c
cc: restore _UAPI__LINUX_BPF_H__ guard in virtual_bpf.h after libbpf …
ekyooo Feb 4, 2026
8740a7a
libbpf-tools: Sync blazesym submodule and migrate tools to new C API …
ekyooo Feb 3, 2026
5efd105
Update debian changelog for release v0.36.1
ekyooo Feb 2, 2026
5b9074c
syscall.py/syscall_helpers.c: update syscall table
bacher09 Feb 17, 2026
1ac592f
libbpf-tools/runqlen: Fix compile error on ppc64el
Bojun-Seo Feb 2, 2026
ebe43b6
libbpf-tools: fix -Wstring-plus-int build error in path_helpers.c
turanalmammadov Feb 24, 2026
aad4b76
libbpf-tools/biosnoop: Fix incorrect sizeof in bpf_get_current_comm
ismhong Feb 24, 2026
0a390b0
Fix build with LLVM-22
hhoffstaette Mar 2, 2026
06b1dc7
Fix deprecation warnings for LLVM PointerType::get/getUnqual
hhoffstaette Mar 1, 2026
d9a2970
Fix C23 constness warnings
hhoffstaette Mar 1, 2026
6c134e2
Fix available_filter_functions path
spevnev Oct 12, 2025
129daba
cc: Add ARM64 syscall prefix detection in C++ API
hsadinen Mar 7, 2026
f8de8a2
cc: Add riscv syscall prefix detection in C++ API
hsadinen Mar 7, 2026
3c17c7d
clang: Add microsoft extensions build flags
Avinesh Mar 6, 2026
4bcceba
CMake tweaks for static library builds
oazizi000 Oct 29, 2021
d3b17f2
Customizing probe names for Pixie
oazizi000 Jul 19, 2019
26f0e55
Shorten a name that is too long for attaching uprobe
yzhao1012 Nov 11, 2019
62dcc2f
BPFTable: Add get_addr_symbol
oazizi000 Mar 16, 2021
efa6cba
BPFTable.h|cc: add 'clear_table' with get_table_offline() for hash ta…
Mar 21, 2021
455ecd5
BPFTable.h|cc: add parameter 'clear' (defaulted to false) to get_stac…
Mar 25, 2021
6767e1a
perf_reader: Change `perf_reader_event_read` to only read a maximum of
JamesMBartlett Jan 24, 2022
b56d298
Add some more options to the BCC build
zasgar Jun 4, 2022
d3639ae
Fix ubsan issue in bcc
zasgar Jan 24, 2023
5e7c060
Merge branch 'pixie9' into master
mlakshkar Apr 9, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 3 additions & 3 deletions .github/actions/build-container/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@ inputs:
description: "OS Disctribution. Ex: ubuntu"
required: true
os_version:
description: "Version of the OS. Ex: 20.04"
description: "Version of the OS. Ex: 24.04"
required: true
os_nick:
description: "Nickname of the OS. Ex: focal"
description: "Nickname of the OS. Ex: noble"
required: true
llvm_versions:
description: "Space separated list of llvm versions to install in the container. Only supported for Ubuntu containers."
type: string
default: "12"
default: "15"
registry:
description: "Registry where to push images"
default: ghcr.io
Expand Down
48 changes: 48 additions & 0 deletions .github/scripts/check_links.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
#! /usr/bin/env python3

import re
import requests
import os
from pathlib import Path

headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
}
timeout = 10

links_file = Path('LINKS.md')
content = links_file.read_text(encoding='utf-8')

link_pattern = re.compile(r'\[([^\]]+)\]\(([^)]+)\)')
links = link_pattern.findall(content)

broken_links = []
for text, url in links:
try:
print(f"Checking: {url}")
response = requests.head(url, headers=headers, timeout=timeout, allow_redirects=True)

if response.status_code >= 400:
response = requests.get(url, headers=headers, timeout=timeout, allow_redirects=True)

if response.status_code >= 400:
broken_links.append((text, url, response.status_code))
except Exception as e:
broken_links.append((text, url, str(e)))

if broken_links:
report = "# Broken Links Report\n\n"
report += "The following links in LINKS.md are broken:\n\n"
report += "| Link Text | URL | Error |\n"
report += "|-----------|-----|-------|\n"

for text, url, error in broken_links:
report += f"| {text} | {url} | {error} |\n"

with open(os.environ['GITHUB_OUTPUT'], 'a') as f:
delimiter = "_REPORT_DELIMITER_"
f.write(f"broken_links=true\n")
f.write(f"report<<{delimiter}\n{report}\n{delimiter}\n")
else:
with open(os.environ['GITHUB_OUTPUT'], 'a') as f:
f.write("broken_links=false\n")
8 changes: 4 additions & 4 deletions .github/workflows/bcc-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ permissions:

jobs:
test_bcc:
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
strategy:
matrix:
os: [{distro: "ubuntu", version: "20.04", nick: focal}]
llvm_version: [12, 15, 17]
os: [{distro: "ubuntu", version: "24.04", nick: noble}]
llvm_version: [15, 17, 19]
env:
- TYPE: Debug
PYTHON_TEST_LOGFILE: critical.log
Expand Down Expand Up @@ -127,7 +127,7 @@ jobs:
overwrite: true

test_bcc_fedora:
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
strategy:
matrix:
os: [{distro: "fedora", version: "38", nick: "f38"}]
Expand Down
42 changes: 42 additions & 0 deletions .github/workflows/check_links.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
name: Check Broken Links

on:
schedule:
# First day of month at 00:00 in every 2nd month
- cron: '0 0 1 */2 *'
workflow_dispatch:

jobs:
check-links:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'

- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install requests

- name: Check links in LINKS.md
id: link-check
run: python .github/scripts/check_links.py

- name: Create issue for broken links
if: steps.link-check.outputs.broken_links == 'true'
uses: actions/github-script@v6
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const report = `${{ steps.link-check.outputs.report }}`;
await github.rest.issues.create({
owner: context.repo.owner,
repo: context.repo.repo,
title: 'Broken links detected in LINKS.md',
body: report,
labels: ['documentation']
});
2 changes: 1 addition & 1 deletion .github/workflows/publish-build-containers.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ jobs:
strategy:
matrix:
os: [
{distro: "ubuntu", version: "20.04", nick: focal, installed_llvm_versions: "12 15 17"},
{distro: "ubuntu", version: "24.04", nick: noble, installed_llvm_versions: "15 17 19"},
{distro: "fedora", version: "38", nick: "f38", installed_llvm_versions: "this is not used"},
]

Expand Down
14 changes: 4 additions & 10 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,14 +1,7 @@
# Copyright (c) PLUMgrid, Inc.
# Licensed under the Apache License, Version 2.0 (the "License")
cmake_minimum_required(VERSION 2.8.12)

if(${CMAKE_VERSION} VERSION_EQUAL 3.12.0 OR ${CMAKE_VERSION} VERSION_GREATER 3.12.0)
cmake_policy(SET CMP0074 NEW)
endif()

if(${CMAKE_VERSION} VERSION_EQUAL 3.3.0 OR ${CMAKE_VERSION} VERSION_GREATER 3.3.0)
cmake_policy(SET CMP0057 NEW)
endif()
cmake_minimum_required(VERSION 3.12)
cmake_policy(SET CMP0074 NEW)

project(bcc)
if(NOT CMAKE_BUILD_TYPE)
Expand Down Expand Up @@ -74,6 +67,7 @@ if(NOT CMAKE_USE_LIBBPF_PACKAGE)
endif()
else()
execute_process(COMMAND git diff --shortstat ${CMAKE_CURRENT_SOURCE_DIR}/src/cc/libbpf/
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
OUTPUT_VARIABLE DIFF_STATUS)
if("${DIFF_STATUS}" STREQUAL "")
execute_process(COMMAND git submodule update --init --recursive
Expand Down Expand Up @@ -149,7 +143,7 @@ if(NOT PYTHON_ONLY)

# clang is linked as a library, but the library path searching is
# primitively supported, unlike libLLVM
set(CLANG_SEARCH "/opt/local/llvm/lib;/usr/lib/llvm-3.7/lib;${LLVM_LIBRARY_DIRS}")
set(CLANG_SEARCH "/opt/local/llvm/lib;${LLVM_LIBRARY_DIRS}")
find_library(libclangAnalysis NAMES clangAnalysis clang-cpp HINTS ${CLANG_SEARCH})
find_library(libclangAST NAMES clangAST clang-cpp HINTS ${CLANG_SEARCH})
find_library(libclangBasic NAMES clangBasic clang-cpp HINTS ${CLANG_SEARCH})
Expand Down
14 changes: 7 additions & 7 deletions CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -6,20 +6,20 @@
# see https://help.github.com/articles/about-codeowners/ for syntax

# Miscellaneous
* @drzaeus77 @goldshtn @yonghong-song @4ast @brendangregg @davemarchevsky
* @chenhengqi @ekyooo @yonghong-song @brendangregg

# Documentation
/docs/ @brendangregg @goldshtn @davemarchevsky
/man/ @brendangregg @goldshtn @davemarchevsky
/docs/ @chenhengqi @ekyooo @yonghong-song @brendangregg
/man/ @chenhengqi @ekyooo @yonghong-song @brendangregg

# Tools
/tools/ @brendangregg @goldshtn @davemarchevsky
/tools/ @chenhengqi @ekyooo @yonghong-song @brendangregg

# Compiler, C API
/src/cc/ @drzaeus77 @yonghong-song @4ast @davemarchevsky
/src/cc/ @chenhengqi @ekyooo @yonghong-song @brendangregg

# Python API
/src/python/ @drzaeus77 @goldshtn @davemarchevsky
/src/python/ @chenhengqi @ekyooo @yonghong-song @brendangregg

# Tests
/tests/ @drzaeus77 @yonghong-song @davemarchevsky
/tests/ @chenhengqi @ekyooo @yonghong-song @brendangregg
2 changes: 1 addition & 1 deletion FAQ.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ A: The so-called Kernel lockdown might be the root cause. Try disabling it with
echo 1 > /proc/sys/kernel/sysrq
echo x > /proc/sysrq-trigger
Also see https://github.com/iovisor/bcc/issues/2525

If you have Secure Boot enabled you need to press Alt-PrintScr-x on the keyboard instead:
```
This sysrq operation is disabled from userspace.
Expand Down
30 changes: 18 additions & 12 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ echo "deb https://repo.iovisor.org/apt/$(lsb_release -cs) $(lsb_release -cs) mai
sudo apt-get update
sudo apt-get install bcc-tools libbcc-examples linux-headers-$(uname -r)
```
(replace `xenial` with `artful` or `bionic` as appropriate). Tools will be installed under /usr/share/bcc/tools.
Tools will be installed under /usr/share/bcc/tools.

**Upstream Nightly Packages**

Expand Down Expand Up @@ -289,7 +289,7 @@ apt-get install flex bison libssl-dev libelf-dev dwarves bc

First, you will need to checkout the WSL2 Linux kernel git repository:
```
KERNEL_VERSION=$(uname -r | cut -d '-' -f 1)
KERNEL_VERSION=$(uname -r | cut -d '.' -f 1-2 | xargs -I {} echo "{}.y")
git clone --depth 1 https://github.com/microsoft/WSL2-Linux-Kernel.git -b linux-msft-wsl-$KERNEL_VERSION
cd WSL2-Linux-Kernel
```
Expand All @@ -311,7 +311,7 @@ mv /lib/modules/$KERNEL_VERSION-microsoft-standard-WSL2+/ /lib/modules/$KERNEL_V

Then you can install bcc tools package according your distribution.

If you met some problems, try to
If you met some problems, try to
```
sudo mount -t debugfs debugfs /sys/kernel/debug
```
Expand Down Expand Up @@ -349,7 +349,8 @@ sudo apt-get install arping bison clang-format cmake dh-python \
dpkg-dev pkg-kde-tools ethtool flex inetutils-ping iperf \
libbpf-dev libclang-dev libclang-cpp-dev libedit-dev libelf-dev \
libfl-dev libzip-dev linux-libc-dev llvm-dev libluajit-5.1-dev \
luajit python3-netaddr python3-pyroute2 python3-setuptools python3
luajit python3-netaddr python3-pyroute2 python3-setuptools python3 \
zip libpolly-19-dev
```

#### Install and compile BCC
Expand Down Expand Up @@ -386,7 +387,7 @@ sudo apt install -y zip bison build-essential cmake flex git libedit-dev \
sudo apt install -y zip bison build-essential cmake flex git libedit-dev \
libllvm14 llvm-14-dev libclang-14-dev python3 zlib1g-dev libelf-dev libfl-dev python3-setuptools \
liblzma-dev libdebuginfod-dev arping netperf iperf

# For Lunar Lobster (23.04)
sudo apt install -y zip bison build-essential cmake flex git libedit-dev \
libllvm15 llvm-15-dev libclang-15-dev python3 zlib1g-dev libelf-dev libfl-dev python3-setuptools \
Expand All @@ -397,6 +398,11 @@ sudo apt install -y zip bison build-essential cmake flex git libedit-dev \
libllvm16 llvm-16-dev libclang-16-dev python3 zlib1g-dev libelf-dev libfl-dev python3-setuptools \
liblzma-dev libdebuginfod-dev arping netperf iperf libpolly-16-dev

# For Noble Numbat (24.04)
sudo apt install -y zip bison build-essential cmake flex git libedit-dev \
libllvm18 llvm-18-dev libclang-18-dev python3 zlib1g-dev libelf-dev libfl-dev python3-setuptools \
liblzma-dev libdebuginfod-dev arping netperf iperf libpolly-18-dev

# For other versions
sudo apt-get -y install zip bison build-essential cmake flex git libedit-dev \
libllvm3.7 llvm-3.7-dev libclang-3.7-dev python zlib1g-dev libelf-dev python3-setuptools \
Expand Down Expand Up @@ -427,7 +433,7 @@ suppose you're running with root or add sudo first
### Install build dependencies
```
dnf install -y bison cmake ethtool flex git iperf3 libstdc++-devel python3-netaddr python3-pip gcc gcc-c++ make zlib-devel elfutils-libelf-devel
# dnf install -y luajit luajit-devel ## if use luajit, will report some lua function(which in lua5.3) undefined problem
# dnf install -y luajit luajit-devel ## if use luajit, will report some lua function(which in lua5.3) undefined problem
dnf install -y clang clang-devel llvm llvm-devel llvm-static ncurses-devel
dnf -y install netperf
pip3 install pyroute2
Expand All @@ -443,7 +449,7 @@ cd bcc-build/
## here llvm should always link shared library
cmake ../bcc -DCMAKE_INSTALL_PREFIX=/usr -DENABLE_LLVM_SHARED=1
make -j10
make install
make install

```
after install, you may add bcc directory to your $PATH, which you can add to ~/.bashrc
Expand All @@ -454,20 +460,20 @@ export PATH=$bcctools:$bccexamples:$PATH
```
### let path take effect
```
source ~/.bashrc
source ~/.bashrc
```
then run
then run
```
hello_world.py
```
Or
Or
```
cd /usr/share/bcc/examples
./hello_world.py
./tracing/bitehist.py

cd /usr/share/bcc/tools
./bitesize
./bitesize

```

Expand Down Expand Up @@ -526,7 +532,7 @@ sudo zypper in lua51-luajit-devel # for lua support in openSUSE Tumbleweed
git clone https://github.com/iovisor/bcc.git
mkdir bcc/build; cd bcc/build
cmake -DLUAJIT_INCLUDE_DIR=`pkg-config --variable=includedir luajit` \ # for lua support
..
-DENABLE_LLVM_SHARED=1 ..
make
sudo make install
cmake -DPYTHON_CMD=python3 .. # build python3 binding
Expand Down
13 changes: 4 additions & 9 deletions LINKS.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
- 2019-12-06: [My learnings on Linux BPF container performance engineering](https://medium.com/@aimvec/my-learnings-on-linux-bpf-container-performance-engineering-3eb424b73d56)
- 2019-11-21: [Debugging network stalls on Kubernetes](https://github.blog/2019-11-21-debugging-network-stalls-on-kubernetes)
- 2019-11-12: [bcc-tools brings dynamic kernel tracing to Red Hat Enterprise Linux 8.1](https://www.redhat.com/en/blog/bcc-tools-brings-dynamic-kernel-tracing-red-hat-enterprise-linux-81)
- 2018-05-03: [Linux System Monitoring with eBPF](https://www.circonus.com/2018/05/linux-system-monitoring-with-ebpf)
- 2018-05-03: [Linux System Monitoring with eBPF](https://www.heinrichhartmann.com/pdf/Heinrich%20Hartmann%20-%20Linux%20System%20Monitoring%20with%20eBPF.pdf)
- 2018-02-22: [Some advanced BCC topics](https://lwn.net/Articles/747640)
- 2018-01-23: [BPFd: Running BCC tools remotely across systems and architectures](https://lwn.net/Articles/744522)
- 2017-12-22: [An introduction to the BPF Compiler Collection](https://lwn.net/Articles/742082)
Expand All @@ -10,35 +10,30 @@
- 2017-07-13: [Performance Superpowers with Enhanced BPF](https://www.usenix.org/conference/atc17/program/presentation/gregg-superpowers)
- 2017-06-28: [The BSD Packet Filter](https://speakerdeck.com/tuxology/the-bsd-packet-filter)
- 2017-03-04: [Linux 4.x Tracing: Performance Analysis with bcc/BPF](https://www.slideshare.net/brendangregg/linux-4x-tracing-performance-analysis-with-bccbpf)
- 2017-02-27: [Profiling a .NET Core Application on Linux](https://blogs.microsoft.co.il/sasha/2017/02/27/profiling-a-net-core-application-on-linux)
- 2017-02-05: [gobpf - utilizing eBPF from Go](https://fosdem.org/2017/schedule/event/go_bpf/attachments/slides/1681/export/events/attachments/go_bpf/slides/1681/gobpf_utilizing_eBPF_from_Go_FOSDEM_2017.pdf)
- 2017-01-31: [Golang bcc/BPF Function Tracing](http://www.brendangregg.com/blog/2017-01-31/golang-bcc-bpf-function-tracing.html)
- 2017-01-18: [BPF: Tracing and more](https://www.slideshare.net/brendangregg/bpf-tracing-and-more)
- 2016-12-09: [Linux 4.x Tracing Tools: Using BPF Superpowers](https://www.slideshare.net/brendangregg/linux-4x-tracing-tools-using-bpf-superpowers)
- 2016-11-30: [Introducing gobpf - Using eBPF from Go](https://kinvolk.io/blog/2016/11/introducing-gobpf---using-ebpf-from-go)
- 2016-11-30: [Introducing gobpf - Using eBPF from Go](https://kinvolk.io/blog/2016/11/ebpf-gobpf)
- 2016-11-30: [Linux bcc/BPF tcplife: TCP Lifespans](http://www.brendangregg.com/blog/2016-11-30/linux-bcc-tcplife.html)
- 2016-10-27: [DTrace for Linux 2016](http://www.brendangregg.com/blog/2016-10-27/dtrace-for-linux-2016.html)
- 2016-10-21: [Linux 4.9's Efficient BPF-based Profiler](http://www.brendangregg.com/blog/2016-10-21/linux-efficient-profiler.html)
- 2016-10-15: [Linux bcc tcptop](http://www.brendangregg.com/blog/2016-10-15/linux-bcc-tcptop.html)
- 2016-10-12: [Linux bcc/BPF Node.js USDT Tracing](http://www.brendangregg.com/blog/2016-10-12/linux-bcc-nodejs-usdt.html)
- 2016-10-08: [Linux bcc/BPF Run Queue (Scheduler) Latency](http://www.brendangregg.com/blog/2016-10-08/linux-bcc-runqlat.html)
- 2016-10-06: [Linux bcc ext4 Latency Tracing](http://www.brendangregg.com/blog/2016-10-06/linux-bcc-ext4dist-ext4slower.html)
- 2016-10-04: [Installing bcc to evaluate BPF and Postgres](http://blog.gregburek.com/2016/10/04/installing-bcc-to-evaluate-bpf-and-postgres)
- 2016-10-04: [Installing bcc to evaluate BPF and Postgres](https://www.gregburek.com/2016/10/04/installing-bcc-to-evaluate-bpf-and-postgres)
- 2016-10-04: [Linux MySQL Slow Query Tracing with bcc/BPF](http://www.brendangregg.com/blog/2016-10-04/linux-bcc-mysqld-qslower.html)
- 2016-10-01: [Linux bcc Tracing Security Capabilities](http://www.brendangregg.com/blog/2016-10-01/linux-bcc-security-capabilities.html)
- 2016-09-23: [BCC – Dynamic Tracing Tools for Linux Performance Monitoring, Networking and More](http://www.tecmint.com/bcc-best-linux-performance-monitoring-tools/)
- 2016-08-22: [BoF - What Can BPF Do For You?](https://events.linuxfoundation.org/sites/events/files/slides/iovisor-lc-bof-2016.pdf)
- 2016-08-22: [BoF - What Can BPF Do For You?](https://events.static.linuxfound.org/sites/events/files/slides/iovisor-lc-bof-2016.pdf)
- 2016-07-03: [Linux debugging tools I love](https://jvns.ca/blog/2016/07/03/debugging-tools-i-love)
- 2016-06-14: [Ubuntu Xenial bcc/BPF](http://www.brendangregg.com/blog/2016-06-14/ubuntu-xenial-bcc-bpf.html)
- 2016-05-26: [Linux BPF/bcc for Oracle Tracing](https://db-blog.web.cern.ch/blog/luca-canali/2016-05-linux-bpfbcc-oracle-tracing)
- 2016-05-04: [Tracing your TCP IPv4 connections with eBPF and BCC from the Linux kernel JIT-VM to Splunk](https://www.splunk.com/blog/2016/05/04/tracing-your-tcp-ipv4-connections-with-ebpf-and-bcc-from-the-linux-kernel-jit-vm-to-splunk/)
- 2016-03-31: [Probing the JVM with BPF/BCC](http://blogs.microsoft.co.il/sasha/2016/03/31/probing-the-jvm-with-bpfbcc/)
- 2016-03-30: [How to turn any syscall into an event: Introducing eBPF Kernel probes](https://blog.yadutaf.fr/2016/03/30/turn-any-syscall-into-event-introducing-ebpf-kernel-probes)
- 2016-03-30: [USDT Probe Support in BPF/BCC](http://blogs.microsoft.co.il/sasha/2016/03/30/usdt-probe-support-in-bpfbcc)
- 2016-03-28: [Linux BPF/bcc Road Ahead, March 2016](http://www.brendangregg.com/blog/2016-03-28/linux-bpf-bcc-road-ahead-2016.html)
- 2016-03-05: [Linux BPF Superpowers](http://www.brendangregg.com/blog/2016-03-05/linux-bpf-superpowers.html)
- 2016-03-02: [Linux BPF Superpowers](https://www.slideshare.net/brendangregg/linux-bpf-superpowers)
- 2016-02-14: [Two New eBPF Tools: memleak and argdist](http://blogs.microsoft.co.il/sasha/2016/02/14/two-new-ebpf-tools-memleak-and-argdist/)
- 2016-02-08: [Linux eBPF/bcc uprobes](http://www.brendangregg.com/blog/2016-02-08/linux-ebpf-bcc-uprobes.html)
- 2016-02-05: [Who is waking the waker? (Linux chain graph prototype)](http://www.brendangregg.com/blog/2016-02-05/ebpf-chaingraph-prototype.html)
- 2016-02-01: [Linux Wakeup and Off-Wake Profiling](http://www.brendangregg.com/blog/2016-02-01/linux-wakeup-offwake-profiling.html)
Expand Down
Loading