All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Return
uint32
instead ofuint64
forpid
andtid
builtins - Remove multi-map
delete
functionality - Add lexical/block scoping for variables
- Replace default map printing on
SIGUSR1
with custom signal handling probes
= Bump max supported LLVM version to 19
- #3433
- Add
--dry-run
CLI option - Enable avg map reads in kernel space (implicit casting)
- Enable for-loops in multiple probes
- For-loops: Allow sharing variables between the main probe and the loop's body
- Parse C++ Class and Inheritance from Debug Info
- Add an optional
size
parameter topath
- Allow tuples to be used as map keys
- Add
has_key
function for maps - Add ability to attach kprobes to inlined functions
- Variable declarations with
let
- Support symbolizing enum values using
%s
specifier inprintf()
- Configuration option to suppress printing maps by default at program exit
- Add
symbol_source
config to source uprobe locations from either DWARF or the Symbol Table - Introduce builtin to access percpu kernel data
- Merge output into
stdout
when-lv
- Stream output when printing maps
- Only print kernel headers not found message if parsing fails
- Add mandatory "stage" argument to the
-d
CLI option - Allow simultaneous use of
-v
and-d
- Remove length limitations for the
buf
builtin function - Change
delete
API to accept a map and key as separate args - Symbolize enums when used in maps
- Remove the
-dd
CLI option - Drop support for LLVM 12 and below
- Remove
ALLOW_UNSAFE_PROBE
compiler flag
- Fix verifier error when array indexing through pointer
- Fix segfault for multi-tracepoint probes
- Fix verifier error from misaligned stack access when using strings as map keys
- Fix min/max map functions
- Fix stack mode for stack builtin
- Fix lldb support in appimage builds
- #3339
- Fix parsing large unsigned int strings as positional params
- Fix json formatting for
strftime
function - Fix BTF/DWARF parsing for structs contained in arrays
- Fix integer comparisons and auto casting for scratch variables
- Fix tuple resizing
- Handle invalid BTF without crashing
- Fix json formatting for hex values
- Fix binary operations on integers always returning 64 bit values
- Fix verifier error when comparing result of len()
- Fix type back propagation for map keys
- Fix crash by adding checks for bad var/map assignments
- Fix field access and offsetof for strings that are builtin types
- Fix crash when using castable per-cpu map types as map keys
- Remove mention of unsupported character literals
- Fix bashreadline tool probe for dynamically linked readline
- Add
lazy_symbolication
config option - Add ability to list all probes in a program
- Add ability to call print() with indexed maps to print single map values
- Add LLVM 18 support
- Add ability to call delete() with multiple arguments
- Add for-each loops for iterating over map elements
- Add optional systemd support
- Add ability to attach uprobes to inlined functions
- Enable count, sum, min, and max map reads in kernel space (implicit casting)
- Add config option for handling missing probes
- Support large arguments for printf() and print()
- Add ability to call exit() with an exit code
- Better error message for args in mixed probes
- Reproducible Builds: Do not store timestamps in gzip header
- Improve DWARF support, using liblldb instead of libdw
- Use new hash function to reduce collisions when aggregating on stack traces
- Disable func builtin for kretprobes and uretprobes when
get_func_ip
feature is not available - Move error printing from debug to verbose mode
- Better error message when libbpf is too old
- Allow trailing semicolons and empty blocks in config syntax
- Allow attaching to
spin_lock
functions with mitigations to prevent deadlocks - Remove length limitations for strings coming out of
str()
andpath()
- Deprecate
sarg
builtin
- Fix ability to interrupt bpftrace during probe attach
- Fix field resolution on structs with anon union as first field
- Fix alignment of atomic map counter update
- Fix func builtin for kretprobes and uretprobes for kernels with working
get_func_ip
feature - Fix ustack missing the second-from-top stack frame in uprobes
- Fix storing strings of differing lengths in a variable
- Fix field resolution for structs in arrays
- Fix error in dereferencing kernel double pointers
- Fix variable corruption when used as map key
- Fix crash when assigning a record type to a map
- Fix type resolution for pointers with
BTF_KIND_TYPE_TAG
- Fix attachment of probes attaching to wildcarded and non-wildcarded kprobes
- Don't unpack kernel headers or look in tmp
- Ignore warnings for missing probes
- Add log2 histograms with finer granularity
- Add a
jiffies
builtin for advanced usages - Emit better errors messages for invalid attachpoints
- Add support for uprobe_multi link
- Attach BTF to generated BPF programs
- Add fentry/fexit aliases for kfunc/kretfunc
- Add support for uprobe pid targeting
- New builtin for getting the number of map elements
- Add more helpful error messages for map operations
- New config block syntax
- Add support for kprobe:module:function
- Standardize config and env var names
- Remove snapcraft support
- Fix JSON output for cgroup_path
- Fix silent truncation of 64-bit values in hist()
- utils: use /data/local/tmp as temprary dir on Android
- Fix uprobe multi probe for targets with wildcards
- Fix symbolication on for 32-bit userspcae and 64-bit kernel
- Fix retval for kretfunc/fexit
- Fix attachment/listing of wildcarded module kfuncs
- Fix uprobe attachment across container boundary
- Fix generated BTF for older kernels
- Add PPID field to
execsnoop.bt
- Use
strftime
instead ofelapsed
inexecsnoop.bt
- Use
strftime
instead ofelapsed
inthreadsnoop.bt
- Increase PID field width and align to the right in
threadsnoop.bt
- Update runqlen.bt to remove
runnable_weight
field from cfs_rq struct. - Update mdflush.bt to use blkdev.h instead of genhd.h for non-BTF builds.
- Add milliseconds to timestamp and align numbers to the right in
killsnoop.bt
- Rawtracepoint support wildcards and list show
- Support all iterators
- Improve working with all probe params (kfunc, uprobe)
- Support func builtin for k(ret)func probes
- Support casting int <-> int array
- Support targeting all running processes for USDTs
- Support targeting all running processes for uprobes/uretprobes
- Make
args
a structure (instead of a pointer) - Improve user symbol resolution
- uprobes: make C++ symbol demangling explicit
- uprobe: improve C++ probes listing
- Delete embedded build support and surrounding infra
- Fix resolving username for malformed /etc/passwd
- Fix crashes when maps are concurrently modified
- Fix alignment of byte arrays inside tuples
- cmake: fix linking libbfd
- Allow '+' in attach point path
- Improve listing and 'probe' builtin for several probe types
- Allow probe builtin with aliased software/hardware probes
- Support executing symlinked binaries with
-c
- Add access to
CLOCK_MONOTONIC
withnsecs(monotonic)
- iter: Skip structures with '__safe_trusted' suffix
- Improve detection of unknown typedefs in ClangParser
- Add
iter:task_vma
iterators detection - Support parsing bitfields from BTF/DWARF
- Support printing entire structs
- BTF support for tracepoints defined in modules
- Add trailer to truncated strings
- Enable watchpoint support for PowerPC
- Add new function,
offsetof
, get the offset of the element in the struct - Add 'StackMode::raw' for ustack and kstack formatting
- Add 'BPFTRACE_STACK_MODE' env variable
- Simplify and fix probe index assignment
- Handle colon in positional param used in attachpoint
- Handle BPF load errors for multi-attachpoints
- Respect BPFTRACE_STRLEN environment variable for all strings
- Treat str() builtin's len parameter as int64
- arm64: define the KASAN_SHADOW_SCALE_SHIFT macro
- Fix segfaults in dwarf_parser
- Support for 32-bit ARM systems
- Support BTF for kernel modules
- Add %rh option to print buffer as hex without \x
- Add stdbool.h to built-in headers
- Add
strcontains
builtin function, find a substring in a string
- Raise minimum versions for libbpf and bcc and vendor them for local builds
- Support comparison for integer arrays
- Drop Ubuntu 19.10 lockdown detection
- Fix pointer/register loads on 32-bit architectures
- Fix kprobe multi-attachment
- Fix attaching to multiple USDT probes using the same wildcard
- Fix pointer arithmetics codegen
- Fix segfault for invalid AssignVarStatement visit
- Better handling of missing function trace support files
- Fix unroll ID reset
- Support profile and interval probes in probe matcher
- Fix BTF detection macro in tools/old/mdflush.bt
- Add builtin:
numaid
- Add helper verifier error handling
- Add builtin:
pton
- Add builtin:
debugf
- Add builtin:
strerror
- Move from BCC to libbpf
- Add non-uprobe based BEGIN/END implementation
- Helper errors (-k, -kk options) are now emitted to text or json output
- kprobe offset verification is now optional, without requiring --unsafe
- Disallow different lhist bounds in a single map
- Serialize empty histogram as an empty JSON array
- Handle enum values in tracepoint format defs
- Fix compound assignments with non-unary expr
- Fix invalid LLVM IR in join builtin
- Fix lexer buffer size check
- Fix invalid LLVM IR as detected by tests
- Fix builds against libbfd(binutils) >=2.39
- Fix access to ctx
The 0.15.0 release has basic support for LLVM 14 but not all features work yet, see #2228
- Add option for unconditional hex output
- Add builtin function:
cgroup_path
- Limit number of generated BPF programs
- Support the octal format specifier (
%o
) inprintf
- Improve include paths resolution
- Automatic type resolution from DWARF
- Add builtin function:
bswap
- Print all maps to stdout on
SIGUSR1
- Add builtin function:
skb_output
- Fix precedence of multiplicative operations
- Fix probe matching for uprobes with absolute address
- Fix tools to work on new kernel versions
- Fix uprobe target resolution
- Fix using wildcards in kfunc
- Improve handling of format strings
- Fix codegen for buf
- Update biosnoop.bt for kernel >=5.17
- Fix precedence of multiplicative operations
- Build time dependency on cereal
- Build time dependency on asciidoctor for man page generation
- [#1927] (bpftrace#1927)
- Support microsecond timestamps in stftime()
- Add
_
as integer literal digit separator - Support for C style integer suffix in parser
- Add C like pointer arithmetic
- Automatic resolution of library paths for uprobes
- Support positional parameters as integer literals
- Access to uprobe arguments by name
- Support variable strings size
- Prevent LLVM from unrolling loops
- Fix memory leaks in struct types
- Fix strncmp() when N is bigger than on-stack buffer
- Fix strncmp() to check for NUL terminator
- Fix unroll() with async calls
- Fix string comparison codegen
- Fix verifier error when accessing same tracepoint field twice
- Fix reading too many bits for <64 bit kfunc args
- Fix misaligned stack access for map keys
- Write new man page for
bpftrace(8)
- Fix precedence of multiplicative operations
- Warn if attaching a kprobe to a non-traceable function
- Support for
-k[k]
andelapsed
initer
probes
- Disallow accessing common tracepoint fields
- Improve JSON printing (nested structs)
- Return 1 from tracepoint probes
- Preserve original order of struct types
- Forbid casting from/to struct types
- Fix single arg wildcard probe listing
- Fix --info reporting wrong libbpf build info
- Reduce frequency of lost stack traces
- Make kaddr() report failure for unknown kernel symbols
- Fix false non-traceable function warnings
- Fix memory leak in clang parser
Incorrect --info output bug fix release
- Add path builtin
- Allow wildcards for tracepoint categories
- Add wildcard support for kfunc probe types
- Add builtin function:
strftime
- Fix
printf
not allowing format specifiers to be directly followed by alphabetic characters - Fix
top
anddiv
arguments ofprint()
not working for Type::avg maps - Add an option to disable warning messages
- Support scientific notation for integer literals
- List retprobes
- Resolve unknown typedefs using BTF and give a hint when a type cannot be found
- Support multi-matched globbed targets for uprobe and ustd probes
- Positional parameters: support numbers as strings and params as string literals
- Support for tracepoint __data_loc fields
- Set addrspace info for various builtins
- Support watchpoint for kernel space address
- Support for pointer to pointer
- Support for uprobe refcounts
- Add basic options and documentations for fuzzing
- Disable
str($# + 1)
- Array improvements (support assignment to variables and usage as a map key)
- Add builtin function:
macaddr
- Add support for usdt arguments utilising the index register and scale
- Add basic mips64 support
- Printing structures
- Array indexing on pointers
- Warn if using
print
onstats
maps with top and div arguments - Prefer BTF data if available to resolve tracepoint arguments
- Improve error messages for kfunc probe types
- Better handling of empty usdt namespaces
- Switch
nsecs
toktime_get_boot_ns
- Tracepoint __data_loc fields are renamed from
args->data_loc_name
toargs->name
- Change a part of the message of '-v' output
- Improve tuple assignment error message
- Remove "BTF: using data from ..." message when using -v flag
- Add -q option for quiet
- Optimize unknown/incomplete types resolution
- Do not check size of the format string of
printf
- Unify semantics of wildcards in probe listing and attachement
- Improve codegen for structs and arrays
- Do not unpack in-kernel headers if system has BTF
- Disable some kfunc probes whose tracing crashes
- Fix negative overflow bug and unstable tests in PR #1416
- Fix
print
outputs nothing when used on hist() maps with large top args - Fix array indexing regression
- Fix type resolution for struct field access via variables
- Fix wrong setting of vmlinux_location.raw when offset kprobe used
- Fix pointer arithmetic for positional parameters
- SEGV when using perf format for stacks
- Fix llvm errors of PositonalParameter
- Error if Positional Params num is zero
- Fix LNOT
- Fix invalid cast handling in tuple
- Check string comparison size
- Fix a possible integer overflow
- Printing of small integers with
printf
- Fix bitfield access for big endian
- Error if using negative length in str() and buf()
- Only create int type Identifier when it is used in sizeof()
- Check exponent value can be expressed in uint64_t
- Fix tracing of usdt probes across namespaces
- Disable reg() for kfunc
- Fix several undefined behavior
- Fix invalid size crash when using strftime() inside a tuple
- Don't create a tuple if an element size if zero
- Support clear() and delete() on a count()-based map without a key
- Add workaround for too deep or long macros
- Fix attaching to usdt probes in shared libraries
- Fix attaching to multiple usdt probe locations with the same label
- Fix signed extension of usdt arguments to the internal 64-bit integer type
- Hook up execsnoop.bt script onto
execveat
call - Support new capabilities for capable.bt
- Add disk field to biosnoop
- Document uptr() and kptr() function
Alpine build bug fix release
bcc 0.17 support release
Detect 7 arg bpf_attach_uprobe() API
LLVM 11 support release
Add LLVM11 build support
Bug fix release for the Docker build
- Don't strip END_trigger
- Allow uprobe placement on arbitrary addresses when --unsafe is used
- Support for s390x
buf
a new function that makes it possible to safely print arbitrary binary data- A new function,
sizeof
, which returns the size of an expression, similar tosizeof
in C - C style while loop support,
while ($a < 100) { $a++ }
- Using a BTF enum value will pull in the entire enum definition
- Add support of using positional params in unroll and increase the unroll limit to 100
- Support for piping scripts in via stdin
- Don't require <linux/types.h> if --btf is specified
- Silence errors about
modprobe
not being found - With --btf, do not use <linux/types.h> for resolving tracepoint defs
- Add environment variable, BPFTRACE_PERF_RB_PAGES, to tune perf ring buffer size
- Add --usdt-file-activation to activate usdt semaphores by file name
- Introduce
-k
and-kk
options. Emit a warning when a bpf helper returns an error - Add tuples to language
- Add support for listing struct/union/enum definitions using BTF
- Add libbpf build into in --info
- Add support for time units
us
andhz
for probeinterval
- Add support for non-map print()
- Enable
printf
,cat
andsystem
to have more than 7 arguments - Enable the
ternary
operator to evaluate builtin calls
- Require C++17 and CMake 3.8 for building bpftrace
- Allow positional parameters in probe attachpoint definitions
- Only list uprobe and usdt probes when
-p
is given - Remove address space memory limit
- Various big endian related fixes
- Type check the
cond
of if and ternary statements - Fix usdt reads in various architecture
- Attach to duplicated USDT markers
- Fix
KBUILD_MODNAME
- Fix
ntop()
not accepting tracepoint arguments - Fix attaching to usdt probes in multiple binaries
- Decrement usdt semaphore count after bpftrace execution
- Reduce high memory consumption when using usdt semaphore
- Remove registers that are not in struct pt_regs (x86-64)
- Ignore trailing kernel module annotation for k[ret]probe's
Improved kprobes which are near zero overhead and use BTF to derive argument names and types:
bpftrace -e 'kfunc:fget { printf("fd %d\n", args->fd); }'
bpftrace can now demangle C++ symbols in binaries:
bpftrace -e 'uprobe:./a.out:"foo()" {printf("ok\n");}
Support for if else
has been added, making it possible to write:
if (cond) {
...
} else if (cond) {
...
}
Instead of:
if (cond) {
...
} else {
if (cond) {
...
}
}
Support for LLVM 9 and LLVM 10 has been added.
Docker images containing a static build are now available on quay.io.
- Add kfunc/kretfunc description to docs/reference_guide.md (e3b9518b) by Jiri Olsa <[email protected]>
- Add kfunc/kretfunc probe tests (bbf2083a) by Jiri Olsa <[email protected]>
- Add test_btf class to setup BTF data (ecbd66b7) by Jiri Olsa <[email protected]>
- Fortify exported functions with has_data check (083bcf9f) by Jiri Olsa <[email protected]>
- Detect btf feature via BTF class (a9450425) by Jiri Olsa <[email protected]>
- Add support to filter kfunc list (a98b3f02) by Jiri Olsa <[email protected]>
- List kfunc functions (75a0f9c7) by Jiri Olsa <[email protected]>
- Generate load code for kfunc/kretfunc arguments (30f699b1) by Jiri Olsa <[email protected]>
- Resolve kfunc arguments in semantic analyser (de2f6c1d) by Jiri Olsa <[email protected]>
- Resolve kfunc arguments in BTF field analyser (8cd3fb50) by Jiri Olsa <[email protected]>
- Add single_provider_type function (3a6325e5) by Jiri Olsa <[email protected]>
- Factor out builtin_args_tracepoint function (e33c246e) by Jiri Olsa <[email protected]>
- Add BTF::resolve_args function to resolve kfunc arguments (69c8fd45) by Jiri Olsa <[email protected]>
- Load and attach kfunc/kretfunc programs (126a9edd) by Jiri Olsa <[email protected]>
- Add missing ProbeType::watchpoint to probetypeName function (343165b1) by Jiri Olsa <[email protected]>
- Allow to specify kernel include dirs (1e987f45) by Jiri Olsa <[email protected]>
- Feature detect
probe_read_{kernel,user}
(b7c236f9) by bas smit <[email protected]> - Add support for using demangled symbols in uretprobe names (269033de) by Masanori Misono <[email protected]>
- Implement
else if
control flow (34fc2801) by Daniel Xu <[email protected]> - detect lockdown mode (37d28c26) by bas smit <[email protected]>
- Extend info flag with system/build info (73abef68) by bas smit <[email protected]>
- Add support for C++ mangled symbols in uprobe names #687 (e8656cbd) by Augusto Caringi <[email protected]>
- Allow hex/octal positional parameters (ef20128b) by bas smit <[email protected]>
- Allow negative positional parameters (babf057e) by bas smit <[email protected]>
- Make positionalparameters literal to avoid warnings (0859fc6b) by bas smit <[email protected]>
- Make
exit()
terminate current probe (6334c23d) by bas smit <[email protected]> - Improve an error message when trying to use 'args' other than tracepoint (e303048c) by Masanori Misono <[email protected]>
- Disable a symbol name cache if ASLR is enabled and
-c
option is not given (4651255b) by Masanori Misono <[email protected]> - Remove deprecated builtins (2667b8a2) by bas smit <[email protected]>
- reject invalid pid argument (cebc5978) by bas smit <[email protected]>
- Fix positional parameter error (1b4febee) by bas smit <[email protected]>
- Emit better tracepoint parser errors (f5217821) by Daniel Xu <[email protected]>
- Fix if comparison (8f8c9cb4) by Masanori Misono <[email protected]>
- Do not keep open BEGIN/END probes (19d90057) by Jiri Olsa <[email protected]>
- Check the length of ap.mode (a388dc14) by Masanori Misono <[email protected]>
- Fix ternary comparison (360be8cf) by Masanori Misono <[email protected]>
- Cast LNOT result (890f5930) by Masanori Misono <[email protected]>
- Gracefully handle long position param overflow (6f26a863) by Vlad Artamonov <[email protected]>
- Error if wildcards are used in "category" of tracepoint (3bfdec94) by Masanori Misono <[email protected]>
- Fix reading USDT probe arguments on AArch64 (ee5314ba) by Nick Gasson <[email protected]>
- Remove type qualifiers from a cast_type (4ad2bf19) by Masanori Misono <[email protected]>
- Fix printf argument offsets (2d2f2332) by Alastair Robertson <[email protected]>
- Warn if Type::string size is not matched when assignment (4638b968) by Masanori Misono <[email protected]>
- Print Type::string and Type::array size information along with type information (03a837e7) by Masanori Misono <[email protected]>
- Consider a short Type::string value (684513ed) by Masanori Misono <[email protected]>
- Consider a non null-terminated Type::string value (13614152) by Masanori Misono <[email protected]>
- oomkill: fix kprobe arg (675727a4) by Xiaozhou Liu <[email protected]>
- Fix 'signed operands for /' warning in naptime.bt (c8f4a6d8) by Augusto Caringi <[email protected]>
- Fix example links to only search bpftrace repo (71c9d29e) by Martin Schmidt <[email protected]>
- Remove example link to a runtime test (560454a1) by Martin Schmidt <[email protected]>
- Add link to example for interval and BEGIN/END (badf5653) by Martin Schmidt <[email protected]>
- Add link to example for profile (ea6f706a) by Martin Schmidt <[email protected]>
- Add links to examples for tracepoints (f6a3d26a) by Martin Schmidt <[email protected]>
- Add links to examples for uprobe/uretprobe (5dd4bd8d) by Martin Schmidt <[email protected]>
- Add links to examples for kprobe/kretprobe (c580ef26) by Martin Schmidt <[email protected]>
- When installing from source on ubuntu and Fedora, non-root users need to add 'sudo' when executing 'make install' (3030046b) by mazhen <[email protected]>
- docs: Add documentation for integer casts (f087abbd) by Daniel Xu <[email protected]>
- Docs: Fix broken link (f76b8bbb) by Adam Jensen <[email protected]>
- Docs: Add missing builtin functions (fd08a932) by Adam Jensen <[email protected]>
- Remove codegen tests warning (f18746af) by bas smit <[email protected]>
- build: document libbcc linking (#1252) (4dadd515) by bas smit <[email protected]>
- cmake: bail on unsupported architectures (4ae387f0) by Daniel Xu <[email protected]>
- Revert "Only link agains libbpf if it exists (#1247)" (04ecb731) by bas smit <[email protected]>
- Only link agains libbpf if it exists (#1247) (a3febcb8) by bas smit <[email protected]>
- Align libbpf.h (229eef6c) by bas smit <[email protected]>
- Sync libbpf with v5.6 (0b369fe6) by bas smit <[email protected]>
- Add runtime tests for ternary (2efcdb29) by Masanori Misono <[email protected]>
- Use BPFtrace::error for TracepointFormatParser errors (#1243) (9106e10c) by Martin Schmidt <[email protected]>
- codegen: Send map id instead of ident string for async events (9a063adc) by bas smit <[email protected]>
- ci: Add LLVM 10 (696e16ce) by Masanori Misono <[email protected]>
- Add codegen test for LLVM 10 (33fe3ee4) by Masanori Misono <[email protected]>
- Suppress -Winconsistent-missing-override warning (2044c53d) by Masanori Misono <[email protected]>
- Use CreateMemCpy that takes MaybeAlign in LLVM 10 (a67fd22d) by Masanori Misono <[email protected]>
- Don't over-read usdt arguments (1711ec70) by Daniel Xu <[email protected]>
- Add proper bcc prefix for bcc headers (977d5851) by Jiri Olsa <[email protected]>
- Use urandom instead of random (23603bfc) by Masanori Misono <[email protected]>
- tests: fix llmv 5 tests (449b33a4) by bas smit <[email protected]>
- codegen: correctly copy and "usym" map (f7a9d9e2) by bas smit <[email protected]>
- codegen: Use map type in perf_event signature (0a27eeb5) by bas smit <[email protected]>
- codegen: avoid usym copy on map assignment (25116d21) by bas smit <[email protected]>
- codegen: deduplicate usym code (078a8236) by bas smit <[email protected]>
- codegen: fix
strncmp
type issues (e523e2c7) by bas smit <[email protected]> - codegen: ensure
getmapkey
stores with equal types (1822cfde) by bas smit <[email protected]> - codegen: fix deleteElem typing issues (0c6403bc) by bas smit <[email protected]>
- codegen: clang-format
join
(e641b115) by bas smit <[email protected]> - codegen: memset takes an i8 value (d2a70f98) by bas smit <[email protected]>
- codegen: remove useless literal handling from
signal
(3bbbfe24) by bas smit <[email protected]> - codegen: fix
probe_read
typing issue (eca43df2) by bas smit <[email protected]> - codegen: fix sarg type issue (09152138) by bas smit <[email protected]>
- codegen: fix
probe_read_str
typing issues (914c87e2) by bas smit <[email protected]> - codegen: fix reg typing issue (0c66f2f5) by bas smit <[email protected]>
- parser: Do not remove empty probe arguments (ae4fe7fb) by Daniel Xu <[email protected]>
- cmake: Link against libz when searching for btf_dump__new (6323d8fb) by Daniel Xu <[email protected]>
- snapcraft: add arm64 to build architectures (2b0faa3e) by Colin Ian King <[email protected]>
- cmake: Control manpages generation (ef39ed0f) by Ovidiu Panait <[email protected]>
- Don't check str arg length for cgroupid (aa94d9b3) by Chris Hunt <[email protected]>
- Track current function name during analysis (d1f23cab) by Chris Hunt <[email protected]>
- Remove unused srclines_ (ce9c4179) by Chris Hunt <[email protected]>
- Remove unused print_map_lhist (7c32b827) by Chris Hunt <[email protected]>
- Remove leftover print_hist declaration (63f4f029) by Chris Hunt <[email protected]>
- Remove leftover print_lhist declaration (8008c5a9) by Chris Hunt <[email protected]>
- Add apt-transport-https for xenial build (8bcf0c04) by Dale Hamel <[email protected]>
- Add the snapcraft yaml rules to allow bpftrace to be built as a snap. (c2eceeb3) by Colin Ian King <[email protected]>
- Revert "Require C++17 to build" (24f97308) by bas smit <[email protected]>
- Fix tracepoint expansion regression (b4f0c204) by Daniel Xu <[email protected]>
- codegen: fix
map
typing (11814f29) by bas smit <[email protected]> - codegen: Update LLVM5 codegen tests (c4f147d3) by bas smit <[email protected]>
- codegen: fix argX type issue (c04bad20) by bas smit <[email protected]>
- codegen: Fix comm typing issues (5926429d) by bas smit <[email protected]>
- codegen: Fix stackid typing issues (a7ba4a1e) by bas smit <[email protected]>
- codegen: Fix exit typing issues (f676b9c5) by bas smit <[email protected]>
- codegen: Fix ntop typing issues (ac792f58) by bas smit <[email protected]>
- codegen: Fix usym typing issues (2e84b52d) by bas smit <[email protected]>
- irbuilder: Add struct storage (1fbccf1b) by bas smit <[email protected]>
- Strengthen tracepoint format parsing (a2e3d5db) by Jiri Olsa <[email protected]>
- cmake: use *_LIBRARIES when testing for libbfd version (b1200771) by Daniel Xu <[email protected]>
- Handle escaped double quotes in AttachPointParser (b98b281d) by Daniel Xu <[email protected]>
- Support
:
s in quoted string (c230fc42) by Daniel Xu <[email protected]> - Add parser tests for trailing non-numeric characters (c0b8644f) by Daniel Xu <[email protected]>
- Update AttachPoint::name to print out watchpoints correctly (dd2312c7) by Daniel Xu <[email protected]>
- Unify ast::AttachPoint::addr and ast::AttachPoint::address (71f4205f) by Daniel Xu <[email protected]>
- Fix semantic analyser unit tests (39d4a493) by Daniel Xu <[email protected]>
- Fix runtime tests (1612af97) by Daniel Xu <[email protected]>
- Update callee interfaces (78c04b01) by Daniel Xu <[email protected]>
- Move AttachPoint parsing logic out of bison (43a72e37) by Daniel Xu <[email protected]>
- tests: cmake: Fix build with ninja (f1fc5190) by Ovidiu Panait <[email protected]>
- bpffeature: move macros to header (860ac6d4) by bas smit <[email protected]>
- bpffeature: delete copy/move constructors/assign (ac5e0025) by bas smit <[email protected]>
- bpffeature: cleanup
report
(af780eb1) by bas smit <[email protected]> - bpffeature: detect supported program types (ce5bbb78) by bas smit <[email protected]>
- bpffeature: detect supported map types (437df58d) by bas smit <[email protected]>
- bpffeature: remove boilerplate (ac4ad41c) by bas smit <[email protected]>
- Avoid calling "slow" regex constructor (fc88784e) by bas smit <[email protected]>
- CreateMemSet: llvm10: Fix compilation errors (6f81111c) by Ovidiu Panait <[email protected]>
- Discard return value for emitAndFinalize() (29caf4b7) by Daniel Xu <[email protected]>
- Require C++17 to build (458bf66d) by Daniel Xu <[email protected]>
- Make docker run command more generic (#1182) (c67730c4) by Connor Nelson <[email protected]>
- Use host network when building docker image (23c29ff1) by Daniel Xu <[email protected]>
- fix typo (92f25f95) by zeil <[email protected]>
- Resolve USDT binaries relative to mount namespace (3bb4a9fd) by Dale Hamel <[email protected]>
- Add docker images as options in install.md (30756be7) by Dale Hamel <[email protected]>
- Add "edge" build, push master to :latest and :edge (b0e6bdc7) by Dale Hamel <[email protected]>
- ast: add missing parameter name (f156a0fb) by bas smit <[email protected]>
- Add the Japanese translation version of the one-liner tutorial (78621fb1) by Masanori Misono <[email protected]>
- Revert "No need to promote scalars to 64-bit" (9a9d1451) by Dale Hamel <[email protected]>
- fix build error (ed48e795) by bas smit <[email protected]>
- Make BEFORE clause in runtime tests synchronous (77f93dbc) by Dale Hamel <[email protected]>
- Only need to rebuild codegen tests if C++ files change (d0792c06) by Alastair Robertson <[email protected]>
- Replace tabs with spaces (f4e377a1) by Alastair Robertson <[email protected]>
- No need to promote scalars to 64-bit (8af25ae9) by Alastair Robertson <[email protected]>
- Regenerate codegen_includes.cpp when files it references are updated (d6d0e836) by Alastair Robertson <[email protected]>
- ci: Add LLVM 9 (42dab3c9) by bas smit <[email protected]>
- codegen: add LLVM-9 rewriter exceptions (681d1850) by bas smit <[email protected]>
- codegen: LLVM9 rewriter (3ec8af95) by bas smit <[email protected]>
- codegen: Rewrite tests (aefc89e7) by bas smit <[email protected]>
- codegen: Remove version dependence from codegen (cd3ab819) by bas smit <[email protected]>
- Add STATIC_LIBC=ON to Docker build scripts (6ef3af3c) by Alastair Robertson <[email protected]>
- Support pushing docker images to quay.io from github actions (b8ab21ae) by Dale Hamel <[email protected]>
- Add xenial to CI build (153e61ef) by Ace Eldeib <[email protected]>
- Only send IRC notifications for build failures on master (471e79b7) by Alastair Robertson <[email protected]>
- vagrant: fix formatting (e8a14566) by bas smit <[email protected]>
- vagrant: Add fedora 31 (c2354a78) by bas smit <[email protected]>
- vagrant: Update ubuntu boxes (9610895c) by bas smit <[email protected]>
- Add Dockerfile.release for bpftrace docker image on quay.io (c2568ee5) by Dale Hamel <[email protected]>
- Mark context accesses as volatile (56d4721e) by Masanori Misono <[email protected]>
- Cast ctx automatically depending on a program type (0e4282e1) by Masanori Misono <[email protected]>
- Access context fields directly (3a910814) by Masanori Misono <[email protected]>
- Error if trying to use context as a map key/value (b7d2510b) by Masanori Misono <[email protected]>
- Introduce Type::ctx (f05b4cda) by Masanori Misono <[email protected]>
- No need to check result of check_assignment (f04c1ad9) by Alastair Robertson <[email protected]>
- Add workaround to remove duplicate entries in uprobe symbols listing (8f5e90f4) by Augusto Caringi <[email protected]>
- cmake: add GNUInstallDirs support (2f380013) by Ovidiu Panait <[email protected]>
- Allow running tests as non-root (again) (efa2da20) by Daniel Xu <[email protected]>
- Report kernel instruction limit (76770de3) by bas smit <[email protected]>
- Add missing include to btf.h (145041ec) by Augusto Caringi <[email protected]>
- New calls:
signal
,override
,strncmp
- Support for attaching to
kprobes
at an offset - Support for struct bitfields
- Add support to attach kprobe to offset (e31e398) by Masanori Misono <[email protected]>
- Add
--info
flag (afafbf5) by bas smit <[email protected]> - Mark 'override_return' as unsafe (49cd031) by bas smit <[email protected]>
- Implement bpf_override_return (784c64e) by bas smit <[email protected]>
- arch: Add support for powerpc64 registers (472f5ed) by Sandipan Das <[email protected]>
- Add source line information to error messages (46e62c0) by bas smit <[email protected]>
- Support octal and hexadecimal escape sequences in string (873d7ba) by Masanori Misono <[email protected]>
- Implement
signal
(32bb577) by bas smit <[email protected]> - Make
signal
unsafe (be676b5) by bas smit <[email protected]> - Implement strncmp (a1d0263) by Jay Kamat <[email protected]>
- Add builtin: cpid (cae4dcf) by bas smit <[email protected]>
- Allow uprobe offset on quoted attach points (6432609) by bas smit <[email protected]>
- Allow string literals as signal specifiers (0230f98) by bas smit <[email protected]>
- Implement bitfield support (8822cc2) by Daniel Xu <[email protected]>
- Take first binary match for PATH lookup on uprobe and USDT (ec5c2c3) by Daniel Xu <[email protected]>
- Infer
uaddr
pointer type from ELF symbol size (59b0659) by bas smit <[email protected]> - Rename
override_return
tooverride
(96cb4b5) by bas smit <[email protected]> - Runtime feature testing (17f3c82) by bas smit <[email protected]>
- Silenced unsigned/signed comparison warning (75101f9) by Daniel Xu <[email protected]>
- error message for verification buffer size (41c0ab8) by Gordon Marler <[email protected]>
- Reimplement
elapsed
using a hidden map (2613ea6) by bas smit <[email protected]> - Remove dependency on 'command' shell builtin (3f7a94a) by Adam Jensen <[email protected]>
- Make parsing fail if lexing fails (d092cb1) by Alastair Robertson <[email protected]>
- Limit increment/decrement to variables (c126441) by bas smit <[email protected]>
- Only warn about missing BTF info in debug mode (f84ae5c) by Daniel Xu <[email protected]>
- Allow uretprobe at an address (f0785b5) by bas smit <[email protected]>
- fix uprobe address on short name (f7ed963) by bas smit <[email protected]>
- Reverse return value of strncmp (384640e) by Jay Kamat <[email protected]>
- Make strcmp return 0 on match (8d9069c) by bas smit <[email protected]>
- Differentiate between regular structs and typedef'd structs (8d34209) by Alastair Robertson <[email protected]>
- Support "." in attach point function argument (c532159) by Daniel Xu <[email protected]>
- clang_parser: workaround for asm_inline in 5.4+ kernel headers (c30e4dd) by Andreas Gerstmayr <[email protected]>
- Consider signed array (9bb6a8b) by Masanori Misono <[email protected]>
- Support anonymous struct/union in BTF::type_of() (36d9914) by Masanori Misono <[email protected]>
- Allow resolving binary paths in different mount ns (124e569) by Dale Hamel <[email protected]>
- Avoid useless allocations in strncmp (551664e) by bas smit <[email protected]>
- Avoid comparing past string length (b10dc32) by bas smit <[email protected]>
- Call llvm.lifetime.end after memcpy if the expression is not a variable (8b2d219) by Masanori Misono <[email protected]>
- bug: Strip newlines from log message (361d1fc) by bas smit <[email protected]>
- Fix buggy signed binop warnings (e87897c) by Daniel Xu <[email protected]>
- Reuse
cat
andsystem
ID when expanding probes (79aada5) by bas smit <[email protected]> - Remove unneeded
probe_read
s fromstrcmp
(43b4e4c) by bas smit <[email protected]> - Fix func variable in uprobe (d864f18) by Masanori Misono <[email protected]>
- Add space for the error message about kernel.perf_event_max_stack (de2a7a8) by Kenta Tada <[email protected]>
- Improve uprobe/usdt visitor error handling and messaging (5005902) by Adam Jensen <[email protected]>
- Fix some semantic analyser crashes (b11dc75) by Alastair Robertson <[email protected]>
- Fix codegen for modulo operation (fe0ed5a) by Daniel Xu <[email protected]>
- Document
override_return
(b83b51d) by bas smit <[email protected]> - Add documentation on BTF (6623f25) by Masanori Misono <[email protected]>
- docs: limit to 105 chars (91e9dad) by bas smit <[email protected]>
- docs: Remove double shebang (da8b10c) by bas smit <[email protected]>
- docs: improve readability of code snippets (34a394a) by bas smit <[email protected]>
- docs: remove unneeded html elements (06d8662) by bas smit <[email protected]>
- Fix typos (e5ad6b9) by Michael Prokop <[email protected]>
- One-liner tutorial: Use "struct" when casting (7a5624c) by Alastair Robertson <[email protected]>
- docs: Add centos 7 repo (1b4cb8f) by bas smit <[email protected]>
- docs: Fix typo (b38dbd0) by bas smit <[email protected]>
- Move debug flags closer to each other in help message (df61049) by Daniel Xu <[email protected]>
- Add binutils dependency to documentation (c57204c) by Daniel Xu <[email protected]>
- Add documentation on release procedure (#981) (528fd6e) by Daniel Xu <[email protected]>
- fix: Minor spelling correction (b3a6aee) by Jason Wohlgemuth <[email protected]>
- Document
signal
(d5f3c75) by bas smit <[email protected]> - INSTALL.md: Fix TOC link (1ab0a71) by Alastair Robertson <[email protected]>
- Amend sizes in documentation and provide date (ddd10fe) by Dale Hamel <[email protected]>
- Docs: add missing TOC entry (8c1d4e9) by bas smit <[email protected]>
- Add the chinese version for one liners tutorial (15a930e) by supersojo <[email protected]>
- Reorganize tests/ directory (193177b) by Daniel Xu <[email protected]>
- Fix typing issues in
CreateMapUpdateElem
(e86b9bb) by bas smit <[email protected]> - Fix typing issues in
CreateMapLookup
(14af118) by bas smit <[email protected]> - Fix build: Add namespace to BPF_FUNC_override_return (b6de734) by Alastair Robertson <[email protected]>
- Unify vmlinux and BTF location list (1d39776) by Masanori Misono <[email protected]>
- Disable probe.kprobe_offset_fail_size runtime test in CI (1497434) by Masanori Misono <[email protected]>
- fmt: update formatting in clang_parser.cpp (aefc424) by Andreas Gerstmayr <[email protected]>
- Use constexpr (b59c3a7) by Masanori Misono <[email protected]>
- Make use of feature testing (b01f89c) by bas smit <[email protected]>
- Import libbpf (132e1ee) by bas smit <[email protected]>
- Rename BPFTRACE_BTF_TEST to BPFTRACE_BTF (5bbeb31) by Masanori Misono <[email protected]>
- Add test for anonymous struct/union processing using BTF (240f59a) by Masanori Misono <[email protected]>
- Switch tests suite to
bcc_foreach_sym
(a251477) by bas smit <[email protected]> - Make resolve_binary_paths include non-executable shared objects in its return. (c3d1095) by Michał Gregorczyk <[email protected]>
- Remove full static builds from travis (4fe9064) by Dale Hamel <[email protected]>
- Move ast.h definitions into ast.cpp (f0dd0b4) by Daniel Xu <[email protected]>
- Use subprocess.Popen text mode (47de78b) by Daniel Xu <[email protected]>
- Fix debian libclang only linking (a9a2f0f) by Dale Hamel <[email protected]>
- Build static+libc images using github actions (4794aba) by Dale Hamel <[email protected]>
- Enable static+glibc builds and embedding LLVM deps (b1ae710) by Dale Hamel <[email protected]>
- Create StderrSilencer helper class to redirect stderr (b59b97a) by Daniel Xu <[email protected]>
- Add missing semicolon (add4117) by Daniel Xu <[email protected]>
- ast: codegen: Add abstraction for stack pointer offset (d19614d) by Sandipan Das <[email protected]>
- clang-format: avoid breaking indent in irbuilderbpf.h (5b6d236) by bas smit <[email protected]>
- Non-invasive formatting of src/*.h (98328f1) by Alastair Robertson <[email protected]>
- Clang Format: Update line-break penalties (30d5b8d) by Alastair Robertson <[email protected]>
- correct for clang-format check (bb30265) by Gordon Marler <[email protected]>
- Add requested msg prefix (f3327bd) by Gordon Marler <[email protected]>
- add requested changes. (c9453b5) by Gordon Marler <[email protected]>
- Show current log size in msg as starting point (7942b9d) by Gordon Marler <[email protected]>
- Fix CI clang-format (13556f9) by Daniel Xu <[email protected]>
- Make ninja work with build system (76bb97a) by Daniel Xu <[email protected]>
- Clang Format: switch/case bracketing style fixes (f4e46b2) by Alastair Robertson <[email protected]>
- Clang Format: Don't wrap braces after namespace (4b26e3f) by Alastair Robertson <[email protected]>
- Add non-literal strncmp test (1c41333) by bas smit <[email protected]>
- Rename literal test (4295985) by bas smit <[email protected]>
- refactor CreateMapLookupElem (7b7ab95) by bas smit <[email protected]>
- Add a semantic and runtime test to test task_struct field accesses (8519550) by Masanori Misono <[email protected]>
- Use
struct task_struct
instead oftask_struct
(d39db3a) by Masanori Misono <[email protected]> - BTF leftover for full type rename (5088682) by Jiri Olsa <[email protected]>
- Create a single is_numeric() function in utils (374ca46) by Alastair Robertson <[email protected]>
- Warn if cmake is less than 3.13 when building with ASAN (ad3b9f3) by Masanori Misono <[email protected]>
- Remove unnecessary division (81b7c0a) by Daniel Xu <[email protected]>
- Add build option, BUILD_ASAN, to turn on address sanitizer (04d015e) by Daniel Xu <[email protected]>
- Properly indent cmake config (24a7695) by Daniel Xu <[email protected]>
- Use mocks consistently in codegen tests so they don't require root to run (b261833) by Alastair Robertson <[email protected]>
- Enable -Werror on CI builds (2f0f5db) by Alastair Robertson <[email protected]>
- CMakeLists cleanups (6b8d7ad) by Alastair Robertson <[email protected]>
- Disable deprecated ORCv1 warning in llvm (607b8af) by Daniel Xu <[email protected]>
- Normalize code (0878020) by Daniel Xu <[email protected]>
- Pass location to uprobe+offset probe (8c1a355) by bas smit <[email protected]>
- Use symbolic constants instead of numeric literal (457aab9) by Daniel Xu <[email protected]>
- Add clang-format rule to travis CI (3b9e959) by Daniel Xu <[email protected]>
- Turn off clang-format for specific long lists (bcbfaa0) by Daniel Xu <[email protected]>
- Add .clang-format file (b04e478) by Daniel Xu <[email protected]>
- Change reinterpret_cast to static cast and fix formatting (03d2d67) by Alastair Robertson <[email protected]>
- Add PER_CPU detection helper (594fd34) by bas smit <[email protected]>
- Store the BPF map type in the map object (2e850c5) by bas smit <[email protected]>
- format: align parser (b3680e6) by bas smit <[email protected]>
- Make ASSERTs in helper functions fail the parent testcase (ddaa482) by Alastair Robertson <[email protected]>
- Add dependency on testprogs and bpftrace to runtime tests (7870091) by Daniel Xu <[email protected]>
- Add custom target for testprogs (d799e83) by Daniel Xu <[email protected]>
- Move testprogs cmake definition before runtime test definitions (6783448) by Daniel Xu <[email protected]>
- Add tests for resolve_binary_path (8fb727a) by Adam Jensen <[email protected]>
- Fix tests to run without $PATH (c1c60c2) by Adam Jensen <[email protected]>
- Add runtime tests for ambiguous wildcard matches (cca9040) by Adam Jensen <[email protected]>
- Add regression tests for modulo operation (0a1cb65) by Daniel Xu <[email protected]>
- Don't take reference of a pointer (61ba68a) by Daniel Xu <[email protected]>
- Silence test suite (8d1f691) by bas smit <[email protected]>
- Disable builtin.cgroup runtime test in CI (8277876) by Daniel Xu <[email protected]>
- Add a RUNTIME_TEST_DISABLE environment to runtime tests (6c984ea) by Daniel Xu <[email protected]>
- Add script to compare tool codegen between builds (d95a2d1) by bas smit <[email protected]>
- Minor btf cleanups (a10479b) by Daniel Xu <[email protected]>
- Add FieldAnalyser to the clang parser tests (13b06d2) by Jiri Olsa <[email protected]>
- Iterate only over detected types in BTF::c_def (409d7ad) by Jiri Olsa <[email protected]>
- Add BPFtrace::btf_set_ to replace global BTF type set (06a09ca) by Jiri Olsa <[email protected]>
- Add BTF::type_of function (4378e24) by Jiri Olsa <[email protected]>
- Adding FieldAnalyser class (ec3c621) by Jiri Olsa <[email protected]>
- Move BTF object into BPFtrace class (fdf3940) by Jiri Olsa <[email protected]>
- Add runtime test (db81d25) by Daniel Xu <[email protected]>
- Add clang_parser test (6cae624) by Daniel Xu <[email protected]>
- Use struct instead of class (fbe3bf6) by Daniel Xu <[email protected]>
- Make
strncmp
codegen unsigned (af54c9b) by bas smit <[email protected]> - Avoid shift/reduce warnings (3761904) by bas smit <[email protected]>
- Treat stackmode as identifier (e018da5) by bas smit <[email protected]>
- Define all
call
s in the lexer to avoid redefinition (b8ddf25) by bas smit <[email protected]> - Remove
_
suffix from local variables (34d4654) by bas smit <[email protected]> - Add regression test for #957 (253cfd6) by bas smit <[email protected]>
- Fix paths in tests (a8dcb02) by bas smit <[email protected]>
- Allow runtime tests to be ran from any directory (9139bed) by bas smit <[email protected]>
- Link libiberty during static builds (aa8c7ba) by Daniel Xu <[email protected]>
- cpid vector -> single (52ff6e3) by bas smit <[email protected]>
- 0.9.3 Changelog (f4ea282) by bas smit <[email protected]>
- Bump to 0.9.3 (3d1e022) by bas smit <[email protected]>
- Add
signal
tests (95cba2b) by bas smit <[email protected]> - Add missing kernel option in INSTALL.md (099d1c9) by Edouard Dausque <[email protected]>
- Make printing the LLVM IR from a debugger easier (d534295) by bas smit <[email protected]>
- Make
uprobes - list probes by pid
test more quiet (b2a570a) by Daniel Xu <[email protected]> - vagrant: add binutils-dev dependency (2e73e04) by Matheus Marchini <[email protected]>
- Fix maptype bugs (028c869) by bas smit <[email protected]>
- Disable -Winconsistent-missing-override in mock.h (d3cb095) by Masanori Misono <[email protected]>
- Disable -Wcast-qual for bpf/btf.h (b308a9c) by Masanori Misono <[email protected]>
- Import used headers (979992e) by Masanori Misono <[email protected]>
- Fix modernize-deprecated-headers warnings (b09836b) by Masanori Misono <[email protected]>
- Fix -Wcast-align (ce45470) by Masanori Misono <[email protected]>
- Fix -Wdelete-abstract-non-virtual-dtor (cb78da3) by Masanori Misono <[email protected]>
- Fix -Wstring-plus-int (3e52a3d) by Masanori Misono <[email protected]>
- Fix -Wunreachable-code-loop-increment (f354911) by Masanori Misono <[email protected]>
- Fix -Wbraced-scalar-init (6fc82ed) by Masanori Misono <[email protected]>
- Fix -Wmismatched-tags (e29a4f2) by Masanori Misono <[email protected]>
- Fix -Wformat-security (cc3ef62) by Masanori Misono <[email protected]>
- Fix some compiler warnings (9a85f10) by Daniel Xu <[email protected]>
- Allow attaching to uprobes at an offset
- BTF support
- integer casts
- integer pointer casts
- Add support to cast to a pointer of integer (#942) (8b60006) by Masanori Misono <[email protected]>
- Add sargX builtin (9dc6024) by Adam Jensen <[email protected]>
- Add support to specify symbol with offset to uprobe (33e887f) by Jiri Olsa <[email protected]>
- add threadsnoop tool (f021967) by Brendan Gregg <[email protected]>
- add tcpsynbl tool (0cbc301) by Brendan Gregg <[email protected]>
- add tcplife tool (51d8852) by Brendan Gregg <[email protected]>
- add swapin tool (c80753b) by Brendan Gregg <[email protected]>
- add setuids tool (439311a) by Brendan Gregg <[email protected]>
- add naptime tool (572de59) by Brendan Gregg <[email protected]>
- add biostacks tool (162bc63) by Brendan Gregg <[email protected]>
- Add check if uprobe is aligned (e2c65bd) by Jiri Olsa <[email protected]>
- Support wildcards in probe path (#879) (2a361cc) by Adam Jensen <[email protected]>
- Add --btf option (ec931fa) by Jiri Olsa <[email protected]>
- Introduce int casts (ee82e64) by bas smit <[email protected]>
- utils: unpack kheaders.tar.xz if necessary (#768) (896fafb) by Matt Mullins <[email protected]>
- Add support to check for libbpf package (8e0800c) by Jiri Olsa <[email protected]>
- Add signed types (53cf421) by bas smit <[email protected]>
- Add location support to builtins (a79e5a6) by bas smit <[email protected]>
- Add location support to calls (c1b2a91) by bas smit <[email protected]>
- Add location support to the AST (67c208d) by bas smit <[email protected]>
- Highlight bpftrace source files (cfbaa2f) by Paul Chaignon <[email protected]>
- Add travis CI build icon to README.md (50375e2) by Daniel Xu <[email protected]>
- Add IRC badge to README (a20af57) by Daniel Xu <[email protected]>
- Use the same shebang for all tools (78eb451) by bas smit <[email protected]>
- Change exit() to send SIGTERM to child processes (649cc86) by Matheus Marchini <[email protected]>
- Make
stats
andavg
signed (809dc46) by bas smit <[email protected]> - Refactor error printer to make severity level configurable (676a6a7) by bas smit <[email protected]>
- Make output line-buffered by default (#894) (78e64ba) by Daniel Xu <[email protected]>
- cmake: don't use language extensions (like gnu++14) (4ce4afc) by Matheus Marchini <[email protected]>
- add file extension on README (545901c) by sangyun-han <[email protected]>
- build: don't set -std flag manually (3cbc482) by Matheus Marchini <[email protected]>
- Don't use random value on stack (b67452b) by Daniel Xu <[email protected]>
- codegen: ensure logical OR and AND works with non-64-bit integers (69cbd85) by Matheus Marchini <[email protected]>
- Allow child process to exit on attach_probe failure (#868) (ecf1bc8) by Adam Jensen <[email protected]>
- json output: Make output more consistent (#874) (9d1269b) by Dan Xu <[email protected]>
- Do not generate extra load for ++/-- for maps/variables (3f79fad) by Jiri Olsa <[email protected]>
- semantic_analyser: validate use of calls as map keys (b54c085) by Matheus Marchini <[email protected]>
- codegen: fix rhs type check for binop (2d87213) by Daniel Xu <[email protected]>
- Fix map field access (a9acf92) by Jiri Olsa <[email protected]>
- Correctly parse enums (59d0b0d) by Daniel Xu <[email protected]>
- Allow build from uncommon bcc installation (9986329) by Jiri Olsa <[email protected]>
- Fix sigint handling under heavy load (0058d41) by Augusto Caringi <[email protected]>
- Assign default value to elem_type to avoid undefined behavior. (a0b8722) by Florian Kuebler <[email protected]>
- Strip trailing newline from error message (5315eee) by bas smit <[email protected]>
- Use strerror to improve
cgroupid
error message (72de290) by bas smit <[email protected]> - Initialize member variable (4dd8bb8) by Daniel Xu <[email protected]>
- Fix umask build issue (#861) (24de62a) by Michael Würtinger <[email protected]>
- Handle SIGTERM gracefully (#857) (fb47632) by Dan Xu <[email protected]>
- json output: suppress output if map is not initialized (348975b) by Andreas Gerstmayr <[email protected]>
- fix 'designated initializers' build errors (#847) (4910e75) by Alek P <[email protected]>
- remove invalid 'unused attribute' (9bf8204) by Matheus Marchini <[email protected]>
- Mention sargX builtin in docs (352e983) by Adam Jensen <[email protected]>
- Update reference guide (65c97fd) by Jiri Olsa <[email protected]>
- Docs: fix inconsistent install script option (a65e3d8) by Daniel T. Lee <[email protected]>
- docs: Fix mismatch between code and example (2499437) by bas smit <[email protected]>
- fix typo in example text - correct name of script (891021b) by sangyun-han <[email protected]>
- Add openSUSE package status link into install.md (#859) (613b42f) by James Wang <[email protected]>
- Fix a typo in reference_guide (e7420eb) by James Wang <[email protected]>
- Ubuntu instructions: add minimum release version (413c1a0) by Peter Sanford <[email protected]>
- Add tests for sargX builtin (774a7a6) by Adam Jensen <[email protected]>
- Add test (0c08b1d) by Daniel Xu <[email protected]>
- Avoid leaking state between cmake tests (625269f) by bas smit <[email protected]>
- Avoid testing for FOUR_ARGS_SIGNATURE on systems without bfd (cd1d231) by bas smit <[email protected]>
- Unset
CMAKE_REQUIRED_LIBRARIES
to avoid influencing tests (ab0665b) by bas smit <[email protected]> - Define PACKAGE to make libbfd happy (d165396) by Daniel Xu <[email protected]>
- Fix 'may be used uninitialized' build warning in bfd-disasm.cpp (ffd203b) by Augusto Caringi <[email protected]>
- Change "variable.tracepoint arg casts in predicates" runtime test (9aae057) by Jiri Olsa <[email protected]>
- bfd-disasm: fix LIBBFD_DISASM_FOUR_ARGS_SIGNATURE (7d62627) by Matheus Marchini <[email protected]>
- semantic_analyser: fix gcc build error on xenial (0e6014a) by Matheus Marchini <[email protected]>
- Prevent forks from notifying the IRC channel (ca93440) by Daniel Xu <[email protected]>
- Add runtime tests for uprobe offset/address (d9c2bab) by Jiri Olsa <[email protected]>
- Bypass the uprobe align check in unsafe mode (18b9635) by Jiri Olsa <[email protected]>
- Adding tests for uprobe offset definitions (d894d0e) by Jiri Olsa <[email protected]>
- Add BfdDisasm class (8198628) by Jiri Olsa <[email protected]>
- Add Disasm class (6f7bc6f) by Jiri Olsa <[email protected]>
- Add support to check for libbfd/libopcodes libraries (542f2b9) by Jiri Olsa <[email protected]>
- Add resolve_offset_uprobe functions (7be4143) by Jiri Olsa <[email protected]>
- Add address and func_offset to ast::AttachPoint and Probe classes (893201a) by Jiri Olsa <[email protected]>
- Fix
sigint under heavy load
runtime test (4f7fd67) by Daniel Xu <[email protected]> - Notify irc channel on build failures (83b5684) by Daniel Xu <[email protected]>
- Add BTF class (43530aa) by Jiri Olsa <[email protected]>
- Read every BTF type (67dbe3f) by Daniel Xu <[email protected]>
- Disable codegen.logical_and_or_different_type test in alpine CI (5271e6c) by Daniel Xu <[email protected]>
- Warn when doing signed division (#910) (fff3b05) by Daniel Xu <[email protected]>
- Add short option for --btf and update usage (88dbe47) by Daniel Xu <[email protected]>
- Add BTF tests (47621bb) by Jiri Olsa <[email protected]>
- Add ClangParser::parse_btf_definitions function (54cf4ab) by Jiri Olsa <[email protected]>
- Add SizedType::operator!= function (8cb79f9) by Jiri Olsa <[email protected]>
- Add ClangParserHandler::check_diagnostics function (3e75475) by Jiri Olsa <[email protected]>
- Add ClangParser::visit_children function (4842ccf) by Jiri Olsa <[email protected]>
- Add BTF::c_def function (02a2d0d) by Jiri Olsa <[email protected]>
- Add Expression::resolve string set (0779333) by Jiri Olsa <[email protected]>
- Add curtask task_struct cast type for field access (80cb0d7) by Jiri Olsa <[email protected]>
- test: fix watchpoint runtime test flakiness (88fc1b8) by Matheus Marchini <[email protected]>
- Disable sign checking for division binop (8084463) by bas smit <[email protected]>
- Add ability to test for warnings (b19ebb6) by bas smit <[email protected]>
- Revert "Signed types (#834)" (6613a14) by Daniel Xu <[email protected]>
- Signed types (#834) (446facb) by bas smit <[email protected]>
- test: fix flaky 32-bit tp runtime test (c0d94c8) by Matheus Marchini <[email protected]>
- travis: use bionic and enable runtime tests (57c5a55) by Matheus Marchini <[email protected]>
- test: print bpftrace script when codegen test fails (b0c4902) by Matheus Marchini <[email protected]>
- tests: add test for cat with fmt str (#842) (b3143a6) by Matheus Marchini <[email protected]>
- Fix tests (#844) (fd0ec92) by bas smit <[email protected]>
- New environment variables (BPFTRACE_NO_USER_SYMBOLS, BPFTRACE_LOG_SIZE)
- New probe type: memory
watchpoint
- Support for JSON output
- Add vargs support for cat() builtin (similar to system) (7f1aa7b) by Augusto Caringi <[email protected]>
- Add memory watchpoint probe type (#790) (854cd4b) by Dan Xu <[email protected]>
- Add support for Go symbol names to uaddr (#805) (e6eb3dd) by Jason Keene <[email protected]>
- add option for JSON output (5c6f20a) by Andreas Gerstmayr <[email protected]>
- Add $# for number of positional arguments (ec8b61a) by Mark Drayton <[email protected]>
- Add BPFTRACE_NO_USER_SYMBOLS environment variable (#800) (41d2c9f) by Dan Xu <[email protected]>
- Add line numbers to parser error messages (a584752, 2233ea7) by bas smit <[email protected]>
- Add new environment variable BPFTRACE_LOG_SIZE (2f7dc75, 7de1e84, 2f7dc75) by Ray Jenkins <[email protected]>
- Terminate when map creation fails (6936ca6) by bas smit <[email protected]>
- Print more descriptive error message on uprobe stat failure (0737ec8) by Dan Xu <[email protected]>
- Allow '#' in attach point path (2dfbc93) by Dan Xu <[email protected]>
- Disable
func
,retval
andreg
for tracepoints since tracepoints can't access this information (7bfc0f8) by bas smit <[email protected]>
- Skip keys which were removed during iteration on
print
(bfd1c07) by Andreas Gerstmayr <[email protected]> - Fix exiting prematurely on strace attach (a584752..0e97b2c) by Jay Kamat <[email protected]>
- Fix unused variable warnings (9d07eb5) by Daniel Xu <[email protected]>
- Fix alignment issues on
ntop
(2006424) by Matheus Marchini <[email protected]> - Fix BEGIN being triggered multiple times when bpftrace is run a second time (14bc835) by bas smit <[email protected]>
- Fix crash when using $0 (b41d66d) by Alastair Robertson <[email protected]>
- Fix tcp tools printing errors (206b36c) by bas smit <[email protected]>
- Update Ubuntu install instructions (4e3ffc3) by Brendan Gregg <[email protected]>
- Clarify help message for
-o
(d6e9478) by Daniel Xu <[email protected]> opensnoop.bt
was incorrectly linked to load.bt (d74fae0) by southpawflo <[email protected]>- Document multiple attach points for probes (21bc5bf) by Daniel Xu <[email protected]>
- Fix incorrect reference to the
probe
key (83d473c) by Jeremy Baumont <[email protected]>
- Fix failing test (086c018) by bas smit <[email protected]>
- Collapse bcc symbol resolvers by process executable (63ff8b0) by Daniel Xu <[email protected]>
- Remove unneeded probe read (7d0aa99) by bas smit <[email protected]>
- Fix runtime test parser to not break with commented out tests (#824) (b73c963) by Augusto Mecking Caringi <[email protected]>
- bpftrace: optimize resolve_kname (#765) (ec5278d) by Matheus Marchini <[email protected]>
- Resolve symbol names using bcc_elf_foreach_sym (#811) (a2d9298) by Jason Keene <[email protected]>
- Add basic editorconfig for defining style (#775) (5b20829) by Jay Kamat <[email protected]>
- Auto-generate list of includes for codegen tests (e3b8ecd) by Alastair Robertson <[email protected]>
- Do not emit GEP instruction when pushing string literals to stack (#667) (e98530c) by Michał Gregorczyk <[email protected]>
- tool style tweaks (8bb0940) by Brendan Gregg <[email protected]>
- Clean up unused variable (#787) (8627e84) by Dan Xu <[email protected]>
- Make member variables end with underscores (c76a8e4) by Alastair Robertson <[email protected]>
- Fail in case there's unresolved type in definitions (ecb7a1b, 2239756, a6a4fb3) by Jiri Olsa <[email protected]>
- Introduce compound assignment operators (
+=
and friends) (7f26468) by Matheus Marchini <[email protected]> - Add support for arrays and IPv6 for the
ntop
builtin function (c9dd10f) by Matheus Marchini <[email protected]> - Add basic support to enums (treat them as constants) (e4cb6ce) by Matheus Marchini <[email protected]>
- Add macro definition support (8826470,af67b56,14e892b) by Matheus Marchini <[email protected]>, Javier Honduvilla Coto <[email protected]>
- Add support for arrays and IPv6 for the
ntop
builtin function (c9dd10f) by Matheus Marchini <[email protected]> - Allow comparison of two string variables (7c8e8ed) by williangaspar <[email protected]>
- Add pre and post behavior to ++ and -- operators (f2e1345...9fea147) by Alastair Robertson <[email protected]>
- [BREAKING CHANGE] Ban kprobes that cause CPU deadlocks (40cf190) by Javier Honduvilla Coto <[email protected]>
- [BREAKING CHANGE] Add unsafe-mode and make default execution mode safe-mode (981c3cf,4ce68cd) by Daniel Xu <[email protected]>
- Introduce compound assignment operators (
+=
and friends) (7f26468) by Matheus Marchini <[email protected]> - Add KBUILD_MODNAME (a540fba) by Brendan Gregg <[email protected]>
- Add flags for include paths and files (
--include
and-I
, respectively) (632652f) by Matheus Marchini <[email protected]> - List uprobes with -l (122ef6e) by Matheus Marchini <[email protected]>
- Add BPFTRACE_MAX_PROBES environment variable (ddb79df) by Matheus Marchini <[email protected]>
- Add option to redirect trace output to file (462a811) by bas smit <[email protected]>
- Add script to check kernel requirements (ac19743) by bas smit <[email protected]>
- Add USDT wildcard matching support (82dbe4e...3725edf,648a65a) by Dale Hamel <[email protected]>
- Add support for arrays and IPv6 for the
ntop
builtin function (c9dd10f,24a463f) by Matheus Marchini <[email protected]> - Add 'cat' builtin (ae1cfc9,ef9baf8) by Augusto Caringi <[email protected]>
- Add array indexing operator [] for one-dimensional, constant arrays (ec664a1) by Dale Hamel <[email protected]>
- Allow dots to truncate fields in
printf
(0f636c9) by Brendan Gregg <[email protected]> - Add
BPFTRACE_MAP_KEYS_MAX
environment variable, and increase default map keys limit to 4096 (fab8bf6) by Brendan Gregg <[email protected]> - Add support for delimiters in join() statement (eb40386) by Jason Koch <[email protected]>
- Add basic support to enums (treat them as constants) (e4cb6ce) by Matheus Marchini <[email protected]>
- Add macro definition support (8826470,af67b56,14e892b) by Matheus Marchini <[email protected]>, Javier Honduvilla Coto <[email protected]>
- Add hardware:branch-misses (9631623) by Jason Koch <[email protected]>
- Allow comparison of two string variables (7c8e8ed) by williangaspar <[email protected]>
- Add pre and post behavior to ++ and -- operators (f2e1345...9fea147) by Alastair Robertson <[email protected]>
- Parse negative integer literals correctly (108068f) by Daniel Xu <[email protected]>
- Tools improvements (9dbee04,a189c36) by Brendan Gregg <[email protected]>
- USAGE message trim (18d63b0) by Brendan Gregg <[email protected]>
- Allow
probe
builtin forBEGIN
andEND
probes (3741efe) by bas smit <[email protected]> - Default -d and -dd output to stdout (ecea569) by Jay Kamat <[email protected]>
- Return with error code if clang finds an error while parsing structs/enums/macros/includes (364849d) by Matheus Marchini <[email protected]>
- Restore map key validation (7826ee3) by Alastair Robertson <[email protected]>
- Add
/usr/include
to default header search path (32dd14b) by Javier Honduvilla Coto <[email protected]> - More information in error message when failing to open script file (3b06e5f) by Alastair Robertson <[email protected]>
- [BREAKING CHANGE] Add unsafe-mode and make default execution mode safe-mode (981c3cf,4ce68cd) by Daniel Xu <[email protected]>
- Safety measure for LLVM out of memory issue (6b53e4a) by Brendan Gregg <[email protected]>
- Allow non-zero lhist min value (51fdb6a) by bas smit <[email protected]>
- Improvements in startup speed (5ed8717,1ffb50f) by Matheus Marchini <[email protected]>
- When using -c, spawn the child process only when the tracing is ready (e442e9d) by Jiri Olsa <[email protected]>
- Allow more pointers as ints (3abc93e) by Brendan Gregg <[email protected]>
- Validate that PID (received via
-p
) is an integer (48206ad) by Javier Honduvilla Coto <[email protected]> - Promote map keys to 64-bit (e06e39d) by Brendan Gregg <[email protected]>
- Add hint when traced PID is not running (9edb3e1) by Javier Honduvilla Coto <[email protected]>
- Allow pointers in printf, mapkeys, and filters (0202412,280f1c6) by Brendan Gregg <[email protected]>
- Allow ksym() lookups on function pointers (2139d46) by Brendan Gregg <[email protected]>
- [BREAKING CHANGE] Ban kprobes that cause CPU deadlocks (40cf190) by Javier Honduvilla Coto <[email protected]>
- Workaround for asm goto in Kernel 5+ headers (60263e1) by Matheus Marchini <[email protected]>
- Properly handle invalid
args
utilization (13c2e2e) by Augusto Caringi <[email protected]> - Fix abort caused by lhist with incorrect number of arguments (41036b9) by bas smit <[email protected]>
- Fix anonymous struct parsing (ea63e8b) by Alastair Robertson <[email protected]>
- Fix code generation for bitwise and logical not on integer values (f522296) by synth0 <[email protected]>
- Fix typo in type mismatch error message (83924f8) by Jay Kamat <[email protected]>
- Fix clearing action for some aggregations (dcd657e) by Javier Honduvilla Coto <[email protected]>
- Fix possible crash if an invalid char is used in search (c4c6894) by Augusto Caringi <[email protected]>
- Fix headers includes by using -isystem rather than -I (32daaa2) by Javier Honduvilla Coto <[email protected]>
- Fix exit() function bypassing END probe processing #228 (f63e1df,e4c418e,5cce746) by Augusto Caringi <[email protected]>
- Fix order in which probes fire (a4bf870) by John Gallagher <[email protected]>
- Stop throwing 'failed to initialize usdt context for path' error message (1fa3d3c) by Augusto Caringi <[email protected]>
- Fix stringification of ntop keys in maps (598050e) by Matheus Marchini <[email protected]>
- Fix parsing of forward-decl structs inside structs (354c919) by Matheus Marchini <[email protected]>
- Fix struct definition from headers (4564d55) by Matheus Marchini <[email protected]>
- Avoid crash if incorrect command line option is used (aa24f29) by Augusto Caringi <[email protected]>
- Fix clang_parser for LLVM 8+ (80ce138) by Matheus Marchini <[email protected]>
- Fix semicolon being required in some cases after if statements (13de974) by Matheus Marchini <[email protected]>
- Throw error message if argN or retval is used with incorrect probe type (b40354c) by Augusto Caringi <[email protected]>
- Fix USDT listing (
-l
) without a search pattern (af01fac) by Javier Honduvilla Coto <[email protected]> - Add missing space to error message (e1f5f14) by Alastair Robertson <[email protected]>
- Fix unroll in some cases (mostly when the generated code was large) (702145c) by Matheus Marchini <[email protected]>
- Added info on clang environment variables (7676530) by Richard Elling <[email protected]>
- Fix snap instructions. (3877e46) by George Slavin <[email protected]>
- Fix ustack documentation (5eeeb10) by Daniel Xu <[email protected]>
- Replace stack with kstack (49e01e0) by Javier Honduvilla Coto <[email protected]>
- Fix TOC in the reference guide (05eb170) by Alastair Robertson <[email protected]>
- Fix broken links in docs (c215c61,845f9b6) by Daniel Xu <[email protected]>
- Fix inaccurate tutorial on listing (a4aeaa5) by Daniel Xu <[email protected]>
- Add documentation for BEGIN/END probes (81de93a) by Daniel Xu <[email protected]>
- Update build instructions for Ubuntu (38b9620) by bas smit <[email protected]>
- INSTALL.md: update required dependency for usdt (5fc438e) by Zi Shen Lim <[email protected]>
- Fix ++ and -- text on undefined variables (47ab5cd) by Matheus Marchini <[email protected]>
- Reference guide small fixes (0d9c1a4) by Augusto Caringi <[email protected]>
- Add instructions to install on Gentoo (3c23187) by Patrick McLean <[email protected]>
- Add install instructions for Ubuntu snap package (0982bb6) by George Slavin <[email protected]>
- Fix spelling mistake (a45869f) by George Slavin <[email protected]>
- Fix 'one liners tutorial': use 'openat' instead of 'open' in examples (0cce55c) by Augusto Caringi <[email protected]>
- Add contributing section to the README (2a08468) by Alastair Robertson <[email protected]>
- Standardise documentation on the bpftrace name (135a4d3) by Alastair Robertson <[email protected]>
- Update install instructions (505b50a) by Alastair Robertson <[email protected]>
- [tests] add missing tests to codegen.cpp (012ebda) by Matheus Marchini <[email protected]>
- tests: add runtime tests for regression bugs (ee57b6f) by Matheus Marchini <[email protected]>
- vagrant: add Ubuntu 19.04 box (60e6d0a) by Matheus Marchini <[email protected]>
- docker: add Fedora 30 (9ccafa0) by Zi Shen Lim <[email protected]>
- Add Vagrantfile for ubuntu (b221f79) by bas smit <[email protected]>
- tests: fix and improve runtime tests (c7b3b2f) by Matheus Marchini <[email protected]>
- Clean up includes in clang_parser (374c240) by Daniel Xu <[email protected]>
- Remove double
check_nargs
call (c226c10) by bas smit <[email protected]> - Fix call.system runtime test (3b4f578) by Daniel Xu <[email protected]>
- Fix call.str runtime test (8afbc22) by Daniel Xu <[email protected]>
- Fix k[ret]probe_order runtime tests (27a334c) by Daniel Xu <[email protected]>
- Remove old TODO (5be3752) by Alastair Robertson <[email protected]>
- Add clang_parser::parse_fail test (6fd7aac) by Jiri Olsa <[email protected]>
- Fix some bugs with positional parameters (13fb175) by Alastair Robertson <[email protected]>
- Fix runtime tests (a05ee59) by bas smit <[email protected]>
- Enable multiline matching for runtime test regex (c8763e4) by bas smit <[email protected]>
- Add environment var support to runtime tests (543513e) by bas smit <[email protected]>
- Disable codegen.printf_offsets test for LLVM5 CI build (ea8a7e4) by Alastair Robertson <[email protected]>
- Fix LLVM 5 tests (938e79b) by Alastair Robertson <[email protected]>
- Refactor find_wildcard_matches() to allow for proper testing (371c7cf) by Alastair Robertson <[email protected]>
- tests: Use Python 3 for integration tests + test fix (#651) (4b0e477) by Javier Honduvilla Coto <[email protected]>
- Add --unsafe to more runtime tests (8b2234a) by Daniel Xu <[email protected]>
- Fix 'ignoring return value' build warning (bdc9f16) by Augusto Caringi <[email protected]>
- Fix 'signed overflow' related build warning (0ece2a9) by Augusto Caringi <[email protected]>
- Fix UnboundLocalError on skipped test (03958cb) by John Gallagher <[email protected]>
- Use getopt_long instead of getopt (d732298) by Daniel Xu <[email protected]>
- Fix docs typo (05bf095) by bas smit <[email protected]>
- check explicitly for systemtap sys/sdt.h and ignore if not present (831633d) by Jason Koch <[email protected]>
- Suppress build warning in GCC >=8 caused by #474 (71d1cd5) by Augusto Caringi <[email protected]>
- Remove more tabs (e9594dd) by Alastair Robertson <[email protected]>
- Convert tabs to spaces (585e8b5) by Alastair Robertson <[email protected]>
- Add existence tests for kstack, kstack() and ustack() (954d93d) by Alastair Robertson <[email protected]>
- [tests] more runtime tests enhancements (#586) (249c7a1) by Matheus Marchini <[email protected]>
- Codegen: Fix assigning non-struct "internal" values to maps (4020a5c) by Alastair Robertson <[email protected]>
- Fix typo on LLVM_REQUESTED_VERSION macro in CMakeLists.txt (82dbe4e) by Quentin Monnet <[email protected]>
- Fix build warning (a77becb) by Alastair Robertson <[email protected]>
- [tests] allow tests to be skipped if a given condition is not met (59fa32a) by Matheus Marchini <[email protected]>
- [tests] make other.if_compare_and_print_string less flaky (840bbb3) by Matheus Marchini <[email protected]>
- Fix compile warnings and mark more functions as const (cfb058d) by Alastair Robertson <[email protected]>
- Misc readability fixes (9581e01) by Fangrui Song <[email protected]>
- build: unify dockerfiles under a bionic image (445fb61) by Matheus Marchini <[email protected]>
- [tests] fix and enhance runtime tests (ea5deb9) by Matheus Marchini <[email protected]>
- [tests] add test script to run tools with -d (4ff113d) by Matheus Marchini <[email protected]>
- [clang_parser] decouple kernel cflags from the parser method (ad753d5) by Matheus Marchini <[email protected]>
- Address TODO items related to objdump dependency (382b9b7) by Adam Jensen <[email protected]>
- Fall back to objdump/grep if bcc is older (fdd02ec) by Adam Jensen <[email protected]>
- [clang_parser] pass BPFtrace as arg instead of StructMap (a0af75f) by Matheus Marchini <[email protected]>
- [ast] introduce Identifier type to AST (389d55f) by Matheus Marchini <[email protected]>
- use CMAKE_SYSTEM_PROCESSOR when selecting whether to include x86_64 or aarch64 sources (0ea7a63) by Michał Gregorczyk <[email protected]>
- Clearify error message for mismatched llvm. (9b77fee) by George Slavin <[email protected]>
- Add more info to LLVM mismatch error message (1e3b1be) by George Slavin <[email protected]>
- Allow 0 as kernel version during first attempt to call bcc_prog_load (13499ac) by Michał Gregorczyk <[email protected]>
- Fix bpftrace_VERSION_MINOR in CMakeLists.txt (8 -> 9) (13321eb) by Matheus Marchini <[email protected]>
- Fix version information when not building inside a git repo (#489) (1f33126) by Augusto Caringi <[email protected]>
- Do not try to load bpf program with unknown kernel version (2c00b7f) by Michał Gregorczyk <[email protected]>
- Add better checks for llvm version (4fe081e) by George Slavin <[email protected]>
- Fix deprecated stack warning in builtin_stack test (a1aaed8) by George Slavin <[email protected]>
- add test for 32-bit tp args (77f7cb7) by Brendan Gregg <[email protected]>
- tests: add some basic integration tests (e9805af) by Javier Honduvilla Coto <[email protected]>
- Fix and simplify lexer.l (57bae63) by Fangrui Song <[email protected]>
- Fix 2 clang warnings: -Wmismatched-tags and -Wpessimizing-move (18da040) by Fangrui Song <[email protected]>
- Revert "Stop linking against bcc-loader-static" (5b6352c) by Alastair Robertson <[email protected]>
- fix typo on BPF_FUNC_get_current_cgroup_id missing message (27371c3) by Jason Koch <[email protected]>
- propagate HAVE_GET_CURRENT_CGROUP_ID to ast modules (57e30da) by Jason Koch <[email protected]>
- Add missing include (5763dc2) by Michał Gregorczyk <[email protected]>
- No need for
if
when we're not doing anything (a65ad14) by Alastair Robertson <[email protected]> - Make indirect* related data static (24d9dd2) by Jiri Olsa <[email protected]>
- Fix issues, add tests and improve reliability of positional parameters (acec163,f2e1345) by Matheus Marchini <[email protected]>
- Deprecate
sym()
. Useksym()
instead (50a66d2) by williangaspar [email protected] - Deprecate
stack
. Usekstack
instead (e8b99cd) by williangaspar [email protected]
- List usdt probes with -l (fa7d5f3) by Timothy J Fontaine [email protected]
- Introduce perf formatting for ustack()/kstack() (db910b9) by Matheus Marchini [email protected]
- Add increment and decrement operators (++/--) (c8d8a08, 6aa66a1, 223d8d8, 1f82aaf, 8c5c4ea) by Dale Hamel [email protected]
- Add changelog file to keep track of unreleased changes (d11fb01) by Matheus Marchini [email protected]
- Allow args with multiple tracepoints (a0a905f, 2df50d3, cddae1a) by Brendan Gregg [email protected]
- Add elapsed builtin (0fde181) by Brendan Gregg [email protected]
- Add support to demangle C++ symbols in userspace stack traces (872525c) by Augusto Caringi [email protected]
- allow \r (e7f0584) by Brendan Gregg [email protected]
- Use debuginfo files information when available (1132d42) by Augusto Caringi [email protected]
- Add ustack([int limit])/kstack([int limit]) calls (08da997) by Matheus Marchini [email protected]
- Allow custom provider name in USDT probe definition (361245c, 80d640a, 20ddfed, c3a6ff1) by Dale Hamel [email protected]
- Detect kernel headers even if they are splitted into source/ and build/ directories (4d76385) by Kirill Smelkov [email protected]
- Add support for arm64 (aarch64) (47fa8aa) by Ali Saidi [email protected]
- Allow customizing stdout buffering mode via -b (1663b84) by Hongli Lai (Phusion) [email protected]
- Add support to list tracepoint arguments (#323) (4a048fc) by Augusto Caringi [email protected]
- Add
ksym
as a replacement forsym
(50a66d2) by williangaspar [email protected] - Add
kstack
as a replacement forstack
(e8b99cd, 840712b, f8f7ceb,6ec9a02) by williangaspar [email protected] - cmake: add BUILD_TESTING support (a56ab12) by Aleksa Sarai [email protected]
- Add --version (61a4650, eab3675) by williangaspar [email protected]
- Add hint to install docs and normalize format (c0084a2) by Daniel Xu [email protected]
- Make bpftrace -l list sofware and hardware types (#44) (acd9a80) by Augusto Caringi [email protected]
- Print program ID when the verbose option is enabled. (8e8258d) by David Calavera [email protected]
- Use
struct
when casting on docs and tools (e2ba048) by Brendan Gregg [email protected] - Allow using the
struct
keyword when casting (df03256) by williangaspar [email protected] - Make path optional on usdts when attaching to pid (c1c7c83) by Timothy J Fontaine [email protected]
- Resolve binary name from PATH for usdts and uprobes (28f0834) by Matheus Marchini [email protected]
- Use map lookups instead of sequential checks in tcpdrop.bt and tcpretrans.bt (cb0969c) by Slavomir Kaslev [email protected]
- Implicitly declare variables to 0 if used but not defined (a408cc2) by Matheus Marchini [email protected]
- Sort all integer maps by values, ascending (c378f57) by Dale Hamel [email protected]
- Change Ubuntu install to LLVM 6.0 (98353bf) by Brendan Gregg [email protected]
- ignore EFAULT stack IDs (f080bbf) by Brendan Gregg [email protected]
- Usage updates (6de4101) by Brendan Gregg [email protected]
- make map stack indentation 4 chars (c1dd418) by Brendan Gregg [email protected]
- Print error messages on all
abort()
calls (5c2ca5b) by williangaspar [email protected] - Lesson 9: Replace "stack" to "kstack" (1ac56bd) by CavemanWork [email protected]
- Use structs with semicolons in tools and documentation (85dba93) by Brendan Gregg [email protected]
- Allow semicolon after struct definition (5982c74) by williangaspar [email protected]
- remove unnecessary newlines in -l (bb4a83c) by Brendan Gregg [email protected]
- list sw/hw probes with full names (6f3e1c4) by Brendan Gregg [email protected]
- hist: split negative, zero, and one into separate buckets (48c0afb) by Brendan Gregg [email protected]
- lhist: interval notation tweak (43e7974) by Brendan Gregg [email protected]
- runqlat.bt: remove if semicolon (c10c0dc) by Brendan Gregg [email protected]
- Probe list optimizations and improvements (7f84552) by Augusto Caringi [email protected]
- Link against system installed bcc (#327) (4c3fbad) by Dan Xu [email protected]
- Make semicolon optional after if and unroll blocks (d74d403) by williangaspar [email protected]
- Avoid crashing if mistakenly just '-d' or '-v' is used (f2f6732) by Augusto Caringi [email protected]
- Return cleanly after printing help (1d41717) by Daniel Xu [email protected]
- Make sure we create map keys when we have all the typing information (971bd77) by Matheus Marchini [email protected]
- Fix for new bpf_attach_kprobe signature (080bef8) by Matheus Marchini [email protected]
- Fix string comparison improperly deallocating variables (ffa173a) by williangaspar [email protected]
- Fix probe keys on maps when the map is used more than one time (df81736) by Matheus Marchini [email protected]
- Fix using same variable name on multiple programs (61a14f2) by williangaspar [email protected]
- Fix build on old compilers (644943a, 1b69272) by Kirill Smelkov [email protected]
- Fix build with latest bcc (d64b36a) by williangaspar [email protected]
- Don't throw warning for undefined types in tracepoint structure definition if
args
is not used (f2ebe1a) by Matheus Marchini [email protected] - Fix for 'redefinition of tracepoint' warning message (baaeade) by Augusto Caringi [email protected]
- Minor fixes in our documentation (0667533) by Matheus Marchini [email protected]
- Fix string comparison (5e114dd, 63acdb6) by williangaspar [email protected]
- Prevent empty trigger functions to be optimized away with -O2 (#218) (9f2069b) by Augusto Caringi [email protected]
- Fix -l behavior with shortcut probe names (2d30e31) by williangaspar [email protected]
- Fix alpine docker build (#372) (2b83b67) by Dan Xu [email protected]
- Fix tracepoint wildcards (946c785) by Brendan Gregg [email protected]
- tests: fix codegen test fot call_hist (342fd6d) by Matheus Marchini [email protected]
- docs: fix trivial typos (3da1980) by Xiaozhou Liu [email protected]
- Fix symbol translation for func, sym, and stack (6276fb5) by Brendan Gregg [email protected]
- Fix wrong package name in Ubuntu Dockerfile (f8e67a9) by xbe [email protected]
- Fix wrong package name in build instructions (8e597de) by Daniel Xu [email protected]
- Fix arguments and error messages for tracepoint shortcut
t
(0eddba7) by williangaspar [email protected]
- Fix 'different signedness' warning messages in codegen call_[uk]stack.cpp (cb25318) by Augusto Caringi [email protected]
- Fix 'signedness' warning message in tracepoint_format_parser.cpp (c3e562f) by Augusto Caringi [email protected]
- Stop linking against bcc-loader-static (5fbb7a7) by Daniel Xu [email protected]
- Speeding up runtime tests (60c5d96) by williangaspar [email protected]
- docker: make sure debugfs is mounted (7dcfc47) by Zi Shen Lim [email protected]
- Better coverage for variable_clear() (34fdded) by williangaspar [email protected]
- Add missing space (c65e7c1) by puyuegang [email protected]
- Ignore warnings on code generated by bison (a935942) by Matheus Marchini [email protected]
- Ignore warnings from LLVM headers (b6c4fd6) by Matheus Marchini [email protected]
- Downgrade back to c++14 (f6986d8) by Matheus Marchini [email protected]
- Fix 'parameter not used' warning (2401ab3) by Matheus Marchini [email protected]
- Fix new build warning msg after c++17 was enabled (e4cbe48) by Augusto Caringi [email protected]
- Get rid of cmake CMP0075 policy warning (9b8208a) by Augusto Caringi [email protected]
- Use C++17 instead of C++14 (4b4d5dc) by Alex Birch [email protected]
- Re-enable more build warnings, fix related warnings #316 (8c383dc) by Augusto Caringi [email protected]
- Define
__BPF_TRACING__
before building (required for kernel 4.19+) (e0bf01d) by Kirill Smelkov [email protected] - Re-enable subset of build warnings and fix some related warnings #316 (f0f56b0) by Augusto Caringi [email protected]
- Cleanup enforce_infinite_rmlimits : removed getrlimit() : Added error description using strerror() (d76465f) by T K Sourab [email protected]
- use the new libbcc API: bcc_{create_map, prog_load} when possible (c03c39f) by Xiaozhou Liu [email protected]
- resources: generate c++ file instead of c file (5e1350b) by Matheus Marchini [email protected]
- docker: disable runtime tests on CI (0667b92) by Matheus Marchini [email protected]
- Hide -inl.h header from interface (10a43d0) by Daniel Xu [email protected]
This is a release to aid packaging. bpftrace has not reached a 1.0 release status yet, as there are still development changes and things to fix. But what is here should be tremendously useful, provided you bear in mind that there will be some changes made to the programming language and command line options between now and a 1.0 release, so any tools or documentation written will become out of date and require changes. If you are anxiously waiting a 1.0 release, please consider contributing so that it can be released sooner.