【问题标题】:Sharing a map between two BPF programs在两个 BPF 程序之间共享映射
【发布时间】:2021-04-16 22:41:41
【问题描述】:

我知道以前有人问过这个问题,但我没有找到任何帖子,其中包含有关如何做到这一点的示例。具体来说,一个 BPF 程序定义了一个映射,另一个 BPF 程序访问该映射。请注意,不是一个 BPF 程序定义了一个映射,另一个用户空间程序访问它。 BOTH BPF 程序都运行在内核空间中。

【问题讨论】:

  • 这不能回答你的问题吗? Map sharing between different ebpf program types。它有如何为 libbpf 执行此操作的示例。操作方法将取决于加载程序。
  • 那篇文章讨论了一些想法。但我对 BPF 的东西很陌生,需要一个具体的例子。如果可能,请分享一份。另外好像是在讲如何在用户空间访问map,而不是在内核中运行另一个BPF程序。

标签: dictionary bpf


【解决方案1】:

平阳。

如果你不介意使用 RedBPF,一个用于 eBPF 的 rust 库,你可以做你想做的。

以下是您提到的确切示例。 https://github.com/foniod/redbpf/blob/main/examples/example-userspace/examples/sharemap1.rs

https://github.com/foniod/redbpf/blob/main/examples/example-userspace/examples/sharemap2.rs

【讨论】:

    猜你喜欢
    • 2018-04-19
    • 2019-07-19
    • 2010-11-17
    • 2011-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多