如果在我的python bcc程序中,我将信息存储在一个固定的映射中,我如何从一个单独的python程序访问它?
因此,我从参考指南中获得了这个固定的地图:
BPF_TABLE_PINNED("hash", u64, u64, ids, 1024, "/sys/fs/bpf/ids");我已经尝试像访问普通表一样访问它,但得到了一个raise key错误。没有任何文档,但我发现这个示例我并不真正理解https://github.com/iovisor/bcc/blame/master/examples/cpp/UseExternalMap.cc
发布于 2021-07-16 04:43:26
如果您只想共享BPF映射,则可以在bcc中执行此操作,而无需显式固定映射。在这种情况下,您需要使用BPF_TABLE_SHARED BPF_TABLE("extern".和例如(摘自the BPF project polycube):
# In first program
BPF_TABLE_SHARED("lru_hash", struct st_k, struct st_v, egress_session_table, NAT_MAP_DIM);
# In second program
BPF_TABLE("extern", struct st_k, struct st_v, egress_session_table,
NAT_MAP_DIM);https://stackoverflow.com/questions/68399366
复制相似问题