Comments (4)
This needs fixing. The join() builtin really should return a string so that it can be used with maps / printf's / whatever. In its current form it's not very usable.
from bpftrace.
I think we should change the join behaviour despite the problems raised.
We can block its use in situations which are currently not possible, e.g. assigning to variables and maps, but allow it as a printf argument. This gets us better formatting of joins by allowing them in printfs and means that the syntax will not have to change when any new kernel/compiler features come in which allow the broken cases to work.
from bpftrace.
I agree with @tyroguru, join() would be way more useful if it returned a string. I think the bigger question is: should we keep the current behavior as well (print if the return value is not used), or should we change it to always return a string?
from bpftrace.
Considering all the problems raised in #769, do we still want this to be implemented?
from bpftrace.
Related Issues (20)
- Redirect tool PRs to new bpftrace-tool-shed HOT 4
- [RFC] add fentry/fexit as mirrors of kfunc/kretfunc HOT 3
- Add `EXPECT_JSON` runtime test directive HOT 1
- Add `EXPECT_TEXT` runtime test directive HOT 1
- Bump to C++20 HOT 4
- Big string / big record support
- Symbolication is broken when running a 32-bit userspace (and bpftrace binary) on a 64-bit kernel HOT 2
- bpftrace list probes errors out with fentry/fexit not available for your kernel version HOT 9
- terminate called after throwing an instance of 'std::filesystem::__cxx11::filesystem_error' HOT 3
- retval incorrect for kretfunc/fexit for functions with args larger than register size HOT 2
- Segmentation fault when printing BTF type with array
- bpftrace fails to attach to some probe points HOT 18
- bpftrace may crash handling anonymous structs or unions in DWARF data HOT 3
- Add ARM static binary in the release HOT 15
- execsnoop.bt script failing with ERROR: Unknown struct/union: 'struct task_struct' HOT 1
- Rewrite tool examples in Markdown HOT 2
- Relax first time contributor CI approval rules HOT 5
- Builtins variable `func` doesn't work in kretprobe HOT 2
- Do not search for ksrc/kobj when BTF is available
- bpftrace not able to attack kprobe with nf_nat with kernel 6.1.66-1 HOT 17
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bpftrace.