Handle enum values in tracepoint format defs #2236
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
It may happen that a tracepoint format definition contains enum values instead of constants for array sizes. Not sure if this is a kernel bug or a legit behaviour but it has happened at my system (5.17.4-200.fc35.x86_64 kernel):
breaking
tools/bitesize.bt
(fails witherror: use of undeclared identifier 'TASK_COMM_LEN'
).This PR fixes the problem by inserting the enum value into
bpftrace.btf_set_
to get the definition from BTF.Checklist
man/adoc/bpftrace.adoc
and if needed indocs/reference_guide.md
CHANGELOG.md