iovisor / iovisor/bcc

trace and argdist support for __data_loc tracepoint fields

Open
#929 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
22.7k
Forks
4.1k
Avg merge
10d 4h
Merged PRs (30d)
3

Description

PR #928 introduces support in bcc for __data_loc tracepoint fields. However, they are not directly accessible from trace and argdist - saying `args->data_loc_fieldname` only gets you the 32-bit integer. Add syntax that would allow accessing the __data_loc field, typically as a string.

Perhaps something like `$dataloc(fieldname)` which would be replaced with:

```
char __data1[SOME_DEFAULT_SIZE];
TP_DATA_LOC_READ_CONST(__data1, fieldname, sizeof(__data1));
```

Or, even better, we could just do this automatically. If the user says `args->fieldname` and the field is a __data_loc field, we could generate the above on his behalf and rewrite `args->fieldname` to `__data1`.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.