An example output looks like: $ bpftool link 1776: sk_skb prog 49730 map_id 0 attach_type sk_skb_verdict pids test_progs(8424) 1777: sk_skb prog 49755 map_id 0 attach_type sk_skb_stream_verdict pids test_progs(8424) 1778: sk_msg prog 49770 map_id 8208 attach_type sk_msg_verdict pids test_progs(8424) Signed-off-by: Yonghong Song <yonghong.song@xxxxxxxxx> --- tools/bpf/bpftool/link.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tools/bpf/bpftool/link.c b/tools/bpf/bpftool/link.c index afde9d0c2ea1..c01d3c38cdf0 100644 --- a/tools/bpf/bpftool/link.c +++ b/tools/bpf/bpftool/link.c @@ -526,6 +526,14 @@ static int show_link_close_json(int fd, struct bpf_link_info *info) show_link_ifindex_json(info->netkit.ifindex, json_wtr); show_link_attach_type_json(info->netkit.attach_type, json_wtr); break; + case BPF_LINK_TYPE_SK_MSG: + jsonw_uint_field(json_wtr, "map_id", info->skmsg.map_id); + show_link_attach_type_json(info->skmsg.attach_type, json_wtr); + break; + case BPF_LINK_TYPE_SK_SKB: + jsonw_uint_field(json_wtr, "map_id", info->skskb.map_id); + show_link_attach_type_json(info->skskb.attach_type, json_wtr); + break; case BPF_LINK_TYPE_XDP: show_link_ifindex_json(info->xdp.ifindex, json_wtr); break; @@ -915,6 +923,16 @@ static int show_link_close_plain(int fd, struct bpf_link_info *info) show_link_ifindex_plain(info->netkit.ifindex); show_link_attach_type_plain(info->netkit.attach_type); break; + case BPF_LINK_TYPE_SK_MSG: + printf("\n\t"); + printf("map_id %u ", info->skmsg.map_id); + show_link_attach_type_plain(info->skmsg.attach_type); + break; + case BPF_LINK_TYPE_SK_SKB: + printf("\n\t"); + printf("map_id %u ", info->skskb.map_id); + show_link_attach_type_plain(info->skskb.attach_type); + break; case BPF_LINK_TYPE_XDP: printf("\n\t"); show_link_ifindex_plain(info->xdp.ifindex); -- 2.43.0