Recent Releases of bpftime
bpftime - v0.1.0
What's Changed
- Fix a README.md typo by @lnicola in https://github.com/eunomia-bpf/bpftime/pull/88
- Docs: Add acknowledgement and fix ci by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/89
- examples: add syscount by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/93
- examples: add more minimal examples by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/96
- docs: add documents of how to use JIT by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/98
- syscallserver: fix epollwait implementation by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/101
- benchmark: add multi-thread bench driver by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/103
- attach: impl helper bpfoverridereturn by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/105
- runtime: remove usage of weak_ptr in attach manager by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/106
- runtime: use macro for log by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/107
- example: add funclatency from bcc/libbpf-tools by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/109
- vm: fix compiling ebpf program using llvm in parallel environment by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/108
- example: add mountsnoop from libbpf-tools by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/110
- runtime: add fs extended helpers by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/111
- example: add sigsnoop from libbpf-tools by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/113
- daemon: fix config from env by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/114
- extension: add iouring helpers by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/115
- runtime: enable syscall server to load and run cross boundary programs. by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/117
- runtime: fix SIGSEGV if no module found by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/119
- benchmark: add micro benchmark runner by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/121
- runtime: remove attach type replace, rename filter to override by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/120
- Add
apt updatein CI setup by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/126 - Rewrite bpftime-cli in C++ by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/125
- llvm-jit: implement AOT compilation by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/127
- vm: update AOT cli by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/129
- vm/runtime: implement userspace -> kernel tailcall by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/131
- vm: fix cmpxchg in intepreter by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/132
- example/tailcall: add README by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/133
- daemon: auto release
/awhen starting by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/136 - Github: Create FUNDING.yml by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/134
- docs: move documents to website by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/138
- docker: remove rust toolchain by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/143
- runtime: implement userspace USDT by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/139
- Update FUNDING.yml by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/146
- docs: fix broken link in
README.mdby @ShawnZhong in https://github.com/eunomia-bpf/bpftime/pull/150 - build(deps): bump shlex from 1.2.0 to 1.3.0 in /tools/cli-rs-archive by @dependabot[bot] in https://github.com/eunomia-bpf/bpftime/pull/153
- vm: fix llvm as a standalone library by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/154
- Attempt to add arm64 support by @ShawnZhong in https://github.com/eunomia-bpf/bpftime/pull/151
- docs: fix document error for new cli by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/164
- ci: make all tests run under fedora(AOT & runtime) by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/161
- Capture remaining arguments for bpftime start by @caizixian in https://github.com/eunomia-bpf/bpftime/pull/182
- cli: Support set spdlog log level by using env for bpftime cli by @Zheaoli in https://github.com/eunomia-bpf/bpftime/pull/200
- third_party: add catch2 and argparse to submodule by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/198
- runtime: add ufunc support by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/193
- runtime: Fix runtime epoll_wait error when timeout is set to -1 by @Zheaoli in https://github.com/eunomia-bpf/bpftime/pull/201
- ci: make all tests run under fedora(llvm-jit, examples, vm) by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/192
- runtime: fix bpf link error in other attach types by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/206
- vm: fix compile error on g++ 10.3.1 by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/207
- fix newline and add gitattributes by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/208
- ci: Fix CMakeLists.txt for llvm-jit to allow user define the llvm path by @Zheaoli in https://github.com/eunomia-bpf/bpftime/pull/204
- build in parallel in makefile by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/209
- test: use Catch2 and cmake for runtime tests by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/215
- CI: clean the CI workflow by using Dockerfile by @Zheaoli in https://github.com/eunomia-bpf/bpftime/pull/216
- attach: reconstruct attach related parts by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/218
- ci: Release binary with RelWithDebInfo and support "no-omit-frame-pointer" to keep the frame pointer by @Zheaoli in https://github.com/eunomia-bpf/bpftime/pull/220
- cli: remove rust depreciate code by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/222
- fix: Updated link in the contributor guidelines by @Viveksati5143 in https://github.com/eunomia-bpf/bpftime/pull/225
- vm: remove aot cache for security issues by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/227
- runtime: add map_ops support by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/229
- attach: fix the performance issue of the new attach implementation by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/238
- examples: add example to trace golang code by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/226
- misc: fix autocrlf for binary file example/goroutine/go-server-http/main by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/242
- #237 | hp77 | Make registers arch independent by @hp77-creator in https://github.com/eunomia-bpf/bpftime/pull/241
- refactor: Make baseattachimpl into a header-only library fix #233 by @fr0m-scratch in https://github.com/eunomia-bpf/bpftime/pull/245
- bpftimetool: fixes unnecessary report of shm removed when there's nothing to remove by @aneeshdamle11 in https://github.com/eunomia-bpf/bpftime/pull/244
- runtime: use bpflinkhandler to record attach links; rewrite attach part of bpfattachctx by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/243
- workflow to run attach tests by @Sanket-0510 in https://github.com/eunomia-bpf/bpftime/pull/240
- runtime: support attach arguments of custom attach implementations, and add an example by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/249
- runtime: fix per cpu map low performance by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/255
- runtime: Add cmake options to control build runtime interact with kernel map by @hp77-creator in https://github.com/eunomia-bpf/bpftime/pull/256
- tools: add support for AOT cli by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/257
- runtime/agent: Add top level exception handlers by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/260
- runtime/agent: implement detaching by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/264
- fix issue Unable to build on newer LLVM #268 by @NobinPegasus in https://github.com/eunomia-bpf/bpftime/pull/276
- fix: #185 The bpftime build system won't rebuild libbpf when libbpf's… by @Kailian-Jacy in https://github.com/eunomia-bpf/bpftime/pull/278
- vm: integrate ubpf & add compat layer for different vm implementations by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/273
- vm: add AOT runner, API, and bench tool by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/258
- Add feature Use std::chrono instead of clock_gettime by @NobinPegasus in https://github.com/eunomia-bpf/bpftime/pull/284
- Make llvm-jit work with bpftrace by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/286
- fix: fix segmentation fault about bashreadline by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/288
- fix: using the openssl resolved path in sslsniff by @rphang in https://github.com/eunomia-bpf/bpftime/pull/290
- Update README.md by @yuanrui77 in https://github.com/eunomia-bpf/bpftime/pull/293
- fix: bash stucks when injected by bpftime agent by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/295
- Add libbpftime.a archive when BPFTIMEBUILDSTATIC_LIB option is provided by @hp77-creator in https://github.com/eunomia-bpf/bpftime/pull/294
- runtime: add network related helpers and maps by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/297
- fix: remove memory allocation in hash maps by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/298
- Update README.md by @yuanrui77 in https://github.com/eunomia-bpf/bpftime/pull/300
- fix: do not override symbols in userland eBPF programs with symbols provided by bpftime's bundled libbpf by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/305
- hp77 | Add Option for build without libbpf by @hp77-creator in https://github.com/eunomia-bpf/bpftime/pull/302
- hp77 | Fix version script not available on macos by @hp77-creator in https://github.com/eunomia-bpf/bpftime/pull/315
- Fix performance: use new hash map implement by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/299
- Allow defining shared memory size at runtime by @NobinPegasus in https://github.com/eunomia-bpf/bpftime/pull/285
- Fix: debug log cannot be print when build in debug mode by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/317
- llvm-jit: patch lddw helpers at compile time by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/323
- fix: improve error message and handling in syscall-server by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/321
- bench: add new micro benchmark about maps and read/write userspace memory by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/334
- fix: log runtime output to env var "BPFTIMELOGOUTPUT" by @Kailian-Jacy in https://github.com/eunomia-bpf/bpftime/pull/301
- vm: use the llvmbpf as submodule by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/336
- [Replaces 248] Support read /sys/bus/event_source/devices/uprobe/type on old kernel versions by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/333
- add xdp-counter example by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/339
- fix: compile on old cmake version and add PATH by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/346
- feat:add lcov and codecov support by @kenlig in https://github.com/eunomia-bpf/bpftime/pull/352
- docs: fix broken links in readme by @Nugine in https://github.com/eunomia-bpf/bpftime/pull/350
- feat: add unit tests from kernel by @kenlig in https://github.com/eunomia-bpf/bpftime/pull/354
- Add more unit tests to increase coverage by @kenlig in https://github.com/eunomia-bpf/bpftime/pull/355
- fix: docker ci unable to run by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/364
- feat:Prevent segmentation fault in proberead & probewrite by @Sy0307 in https://github.com/eunomia-bpf/bpftime/pull/368
- fix ubpf & llvm-jit compile error by @Sy0307 in https://github.com/eunomia-bpf/bpftime/pull/369
- fix: use boostshmstring when an agent_config being setup on shared memory by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/371
- Support dynamic vm switch instead of setting in compile time by @Sy0307 in https://github.com/eunomia-bpf/bpftime/pull/373
- deps: update bpftool version by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/363
- update submodule llvmbpf by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/379
- Improve benchmark and config by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/382
- Add benchmark scripts for experiments by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/387
- Add benchmark build and test to CI by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/389
- Add experiments to benchmark CI and publish them by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/391
- Add bpftrace CI by @Sy0307 in https://github.com/eunomia-bpf/bpftime/pull/380
- Add codecov config file and threshold by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/390
- Add simple attach impl to provide simpler way to register some basic attach impls by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/393
- Fix a typo in README [skip ci] by @NoobZang in https://github.com/eunomia-bpf/bpftime/pull/395
- fix: benchmark/requirements.txt to eliminate critical vulnerability by @yasir-ai in https://github.com/eunomia-bpf/bpftime/pull/398
- benchmark: add new visualization script for performance metrics by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/399
- Implement
bpf_get_stackidby @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/394 - Add GPU support into bpftime by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/400
- doc: add attach doc for gpu by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/402
- benchmark: add cuda probe microbench and trampoline C++ code by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/403
- cuda-attach: support multiple cuda thread by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/413
- Update README.md by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/414
- GPU: Support GPU map (per-thread array map) for CUDA by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/423
- Update CITATION.cff and README.md to reflect new paper by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/422
- fix: update readme of cuda-counter-gpu-array example by @XiaoYiXiaoYang in https://github.com/eunomia-bpf/bpftime/pull/433
- fix: Resolve compilation failure on AArch64 by @NoobZang in https://github.com/eunomia-bpf/bpftime/pull/432
- feat: Add ARM64 Docker support and build test script by @yunwei37 in https://github.com/eunomia-bpf/bpftime/pull/437
New Contributors
- @lnicola made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/88
- @ShawnZhong made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/150
- @caizixian made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/182
- @Zheaoli made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/200
- @Viveksati5143 made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/225
- @hp77-creator made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/241
- @fr0m-scratch made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/245
- @aneeshdamle11 made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/244
- @Sanket-0510 made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/240
- @Kailian-Jacy made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/278
- @rphang made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/290
- @yuanrui77 made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/293
- @kenlig made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/352
- @Nugine made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/350
- @Sy0307 made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/368
- @NoobZang made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/395
- @yasir-ai made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/398
- @XiaoYiXiaoYang made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/433
Full Changelog: https://github.com/eunomia-bpf/bpftime/compare/v0.0.3...v0.1.0
- C++
Published by yunwei37 6 months ago
bpftime - v0.0.3
Support interact with kernel and other types.
Linux plumbers meeting version:
We talked about it in LPC 23 today, and the slides: https://lpc.events/event/17/contributions/1639 Stream: https://youtube.com/watch?v=zDNZY0HQOMw&t=1765s
The draft paper: https://arxiv.org/abs/2311.07923
- C++
Published by yunwei37 over 2 years ago
bpftime - v0.0.2
What's Changed
- Update with embedded-ebpf uprobe & update CLI with syscall trace by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/13
- Add support for ebpf-verifier by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/14
Full Changelog: https://github.com/eunomia-bpf/bpftime/compare/v0.0.1...v0.0.2
- C++
Published by yunwei37 over 2 years ago
bpftime - v0.0.1
This is a pre-release for the core component, for Prove-of-Concept working.
What's Changed
- Tools: add a new CLI in rust and related CI tests by @Officeyutong in https://github.com/eunomia-bpf/bpftime/pull/12
New Contributors
- @Officeyutong made their first contribution in https://github.com/eunomia-bpf/bpftime/pull/12
Full Changelog: https://github.com/eunomia-bpf/bpftime/commits/v0.0.1
- C++
Published by yunwei37 over 2 years ago