|
BCC: Dentry_path_raw() support
The function dentry_path_raw calls __dentry_path which has locks called inside the function, so itself or a wrapper cannot be used as the helper. You could traverse the dentry itself in the bpf progra
The function dentry_path_raw calls __dentry_path which has locks called inside the function, so itself or a wrapper cannot be used as the helper. You could traverse the dentry itself in the bpf progra
|
By
Yonghong Song
· #1131
·
|
|
Bcc on 32-bit ARM
<iovisor-dev@...> wrote: All these are valid. For certain program types e.g., networking where pt_regs are not needed, you can already use -target bpf in clang. Check linux:tools/testing
<iovisor-dev@...> wrote: All these are valid. For certain program types e.g., networking where pt_regs are not needed, you can already use -target bpf in clang. Check linux:tools/testing
|
By
Yonghong Song
· #1124
·
|
|
[PATCH, bpf-llvm] Fix bug on silently truncating 64-bit immediate
Hi, Jiong, The patch looks good. Thanks for fixing the issue. Will merge soon. Yonghong <iovisor-dev@...> wrote:
Hi, Jiong, The patch looks good. Thanks for fixing the issue. Will merge soon. Yonghong <iovisor-dev@...> wrote:
|
By
Yonghong Song
· #1120
·
|
|
Bcc on 32-bit ARM
Hi, Adrian, Thanks for comprehensive hacking report to make arm32 work! More comments below. <iovisor-dev@...> wrote: I look at the change. Mostly it is okay. In the code, you mentioned,
Hi, Adrian, Thanks for comprehensive hacking report to make arm32 work! More comments below. <iovisor-dev@...> wrote: I look at the change. Mostly it is okay. In the code, you mentioned,
|
By
Yonghong Song
· #1112
·
|
|
New helper bpf_get_current_pidns_info
<cneirabustos@...> wrote: During linux plumbers conference, I talked to Eric Biederman (kernel namespace maintainer). The below is an example output of "stat -L /proc/self/ns/pid": -bash-4.3$ st
<cneirabustos@...> wrote: During linux plumbers conference, I talked to Eric Biederman (kernel namespace maintainer). The below is an example output of "stat -L /proc/self/ns/pid": -bash-4.3$ st
|
By
Yonghong Song
· #1100
·
|
|
[PATCH RFC 0/4] Initial 32-bit eBPF encoding support
<iovisor-dev@...> wrote: Not sure what LLVM will do in this case for later "r1" access unless going through the real implementation. My hunch is LLVM should do a conversion from 32bit to
<iovisor-dev@...> wrote: Not sure what LLVM will do in this case for later "r1" access unless going through the real implementation. My hunch is LLVM should do a conversion from 32bit to
|
By
Yonghong Song
· #1089
·
|
|
[PATCH RFC 3/4] New 32-bit register set
Hi, Jiong, The new patch looks good. I did some basic testing on net-next:samples/bpf and net-next:tools/testing/selftests/bpf and it works fine. All existing llvm unit tests are not impacted as well
Hi, Jiong, The new patch looks good. I did some basic testing on net-next:samples/bpf and net-next:tools/testing/selftests/bpf and it works fine. All existing llvm unit tests are not impacted as well
|
By
Yonghong Song
· #1084
·
|
|
[PATCH RFC 3/4] New 32-bit register set
Hi, Jiong, Thanks for the patch! It is a great start to support 32bit register in BPF. In the past, I have studied a little bit to see whether 32bit register support may reduce the number of unnecessa
Hi, Jiong, Thanks for the patch! It is a great start to support 32bit register in BPF. In the past, I have studied a little bit to see whether 32bit register support may reduce the number of unnecessa
|
By
Yonghong Song
· #1070
·
|
|
Accessing maps on already installed BPF program
iovisor-dev <iovisor-dev@...> wrote: The better way than export/import is prog/map pinning. Unfortunately, this is not available in bcc API yet.
iovisor-dev <iovisor-dev@...> wrote: The better way than export/import is prog/map pinning. Unfortunately, this is not available in bcc API yet.
|
By
Yonghong Song
· #1061
·
|
|
[v2][PATCH RFC] Add BPF AsmParser support in LLVM
Sorry. Resend with "plain text format" to satisfy xdp-newbies mailing list requirement.
Sorry. Resend with "plain text format" to satisfy xdp-newbies mailing list requirement.
|
By
Yonghong Song
· #1053
·
|
|
[v2][PATCH RFC] Add BPF AsmParser support in LLVM
Thanks, Jiong, The patch looks good. I have applied to llvm trunk. https://reviews.llvm.org/rL313055 A little bit more comments below. Right now, this optimization actually has been done in compiler s
Thanks, Jiong, The patch looks good. I have applied to llvm trunk. https://reviews.llvm.org/rL313055 A little bit more comments below. Right now, this optimization actually has been done in compiler s
|
By
Yonghong Song
· #1052
·
|
|
[v2][PATCH RFC] Add BPF AsmParser support in LLVM
Hi, Jiong, Thanks for the patch. Comments inlined. Right. We may need to separate out signed comparison vs. others. Will do that later. Sorry for the confusion caused by "ll". I tested your patch and
Hi, Jiong, Thanks for the patch. Comments inlined. Right. We may need to separate out signed comparison vs. others. Will do that later. Sorry for the confusion caused by "ll". I tested your patch and
|
By
Yonghong Song
· #1048
·
|
|
New bcc helpers
Hi, Carlos, Thanks for the prototyping. See comments below. iovisor-dev <iovisor-dev@...> wrote: We already have helper to get current task structure. From there, bpf_probe_read should g
Hi, Carlos, Thanks for the prototyping. See comments below. iovisor-dev <iovisor-dev@...> wrote: We already have helper to get current task structure. From there, bpf_probe_read should g
|
By
Yonghong Song
· #1044
·
|
|
[PATCH RFC] Add BPF AsmParser support in LLVM
I just push a patch (similar to your suggestion below but without assertion) which still has "ll" suffix for the constant, but no "ll" suffix for symbols. The reason is that we use "ll" in the asm pri
I just push a patch (similar to your suggestion below but without assertion) which still has "ll" suffix for the constant, but no "ll" suffix for symbols. The reason is that we use "ll" in the asm pri
|
By
Yonghong Song
· #1039
·
|
|
New bcc helpers
In kernel, you need to add your function proto to kprobe_prog_func_proto in kernel/trace/bpf_trace.c
In kernel, you need to add your function proto to kprobe_prog_func_proto in kernel/trace/bpf_trace.c
|
By
Yonghong Song
· #1037
·
|
|
[PATCH RFC] Add BPF AsmParser support in LLVM
Hi, Jiong, The patch looks great! I tested with a few bpf programs from kernel:samples/bpf/ directory. Your test case with verifier like input looks good. I will have a few suggestions later. I tested
Hi, Jiong, The patch looks great! I tested with a few bpf programs from kernel:samples/bpf/ directory. Your test case with verifier like input looks good. I will have a few suggestions later. I tested
|
By
Yonghong Song
· #1033
·
|
|
Getting stack traces from tracepoint probes
Now I remember. The tracepoint get_stackid should still work. In kernel, we store the pt_regs in the first 8-byte unused args space and use it to walk through the stacks.
Now I remember. The tracepoint get_stackid should still work. In kernel, we store the pt_regs in the first 8-byte unused args space and use it to walk through the stacks.
|
By
Yonghong Song
· #1027
·
|
|
Getting stack traces from tracepoint probes
<iovisor-dev@...> wrote: This won't work. get_stackid needs pt_regs so that it can walk through the frame to get stacks. Here for tracepoint, "args" is the tracepoint structure.
<iovisor-dev@...> wrote: This won't work. get_stackid needs pt_regs so that it can walk through the frame to get stacks. Here for tracepoint, "args" is the tracepoint structure.
|
By
Yonghong Song
· #1025
·
|
|
modifying packets in XDP
This is the problem: static inline uint16_t parse_tcp_pld(void *data, u64 nh_off, void *data_end) { uint16_t *pld = data + nh_off; if ((void*)&pld[1] > data_end) return 0; return pld; } return value s
This is the problem: static inline uint16_t parse_tcp_pld(void *data, u64 nh_off, void *data_end) { uint16_t *pld = data + nh_off; if ((void*)&pld[1] > data_end) return 0; return pld; } return value s
|
By
Yonghong Song
· #1008
·
|
|
modifying packets in XDP
Note that: R6=inv,min_value=4,max_value=65539,min_align=1,aux_off_align=2 "inv" means unknown value. Could you double check your program?
Note that: R6=inv,min_value=4,max_value=65539,min_align=1,aux_off_align=2 "inv" means unknown value. Could you double check your program?
|
By
Yonghong Song
· #1003
·
|