diff options
| author | Alexei Starovoitov <[email protected]> | 2016-02-18 03:58:58 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2016-02-20 05:21:44 +0000 |
| commit | d5a3b1f691865be576c2bffa708549b8cdccda19 (patch) | |
| tree | 12f6009f168baee6889a0fde07d60ac3f5c12aac /net/unix/af_unix.c | |
| parent | perf: generalize perf_callchain (diff) | |
| download | kernel-d5a3b1f691865be576c2bffa708549b8cdccda19.tar.gz kernel-d5a3b1f691865be576c2bffa708549b8cdccda19.zip | |
bpf: introduce BPF_MAP_TYPE_STACK_TRACE
add new map type to store stack traces and corresponding helper
bpf_get_stackid(ctx, map, flags) - walk user or kernel stack and return id
@ctx: struct pt_regs*
@map: pointer to stack_trace map
@flags: bits 0-7 - numer of stack frames to skip
bit 8 - collect user stack instead of kernel
bit 9 - compare stacks by hash only
bit 10 - if two different stacks hash into the same stackid
discard old
other bits - reserved
Return: >= 0 stackid on success or negative error
stackid is a 32-bit integer handle that can be further combined with
other data (including other stackid) and used as a key into maps.
Userspace will access stackmap using standard lookup/delete syscall commands to
retrieve full stack trace for given stackid.
Signed-off-by: Alexei Starovoitov <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/unix/af_unix.c')
0 files changed, 0 insertions, 0 deletions
