• 小李同学
    2021-03-04
    老师,有没有能跑在arm64板子上的bpf用例,我用最简单的hello word测试用例,5.4的内核,报各种错误,都快怀疑是不是不能跑在atm64上

    作者回复: eBPF 肯定是可以跑在ARM64上的。 我这里没有arm64的环境,不过你可以先检查一下内核中的BPF相关编译参数,也可以尝试一下bcc的工具,然后在bcc github中提问。

    
    4
  • 好说
    2021-02-13
    老师,ebpf-kill-example编译后执行会有下面的报错,是内核少开启了什么吗? libbpf: sec 'tracepoint/syscalls/sys_enter_kill': failed to find program symbol at offset 0 The kernel didn't load the BPF program

    作者回复: 这个出错信息应该是libbpf库里出来的。 我发现 https://github.com/niclashedam/ebpf-kill-example/commits/master, 里最近有很多的更新。 你可以用我课程中老版本的代码,可以在我fork的repo中拿到,https://github.com/chengyli/ebpf-kill-example.git 在这里libbpf是从kernel 5.4 的代码里编译出来的。

    共 2 条评论
    1
  • janey
    2022-11-18 来自江苏
    请问下,Clang/LLVM编译成 foo_kern.o文件再加载到内核中由BPF Verifier进行指令检查然后再由JIT编译成宿主机上的本地指令。这个过程中每次程序执行一次,这三个步骤都要走一遍吗?还是说会只需要做一次,当下次执行的时候直接用上次处理好的本地指令就行?
    
    
  • JianXu
    2022-08-27 来自上海
    老师,ebpf 和 iptables 里面的hook 最本质的区别是什么呢?
    
    