bpf: Fix another bpftool segfault without skeleton code enabled
authorLouis Peens <louis.peens@netronome.com>
Wed, 8 Jul 2020 11:08:27 +0000 (13:08 +0200)
committerDaniel Borkmann <daniel@iogearbox.net>
Wed, 8 Jul 2020 22:32:00 +0000 (00:32 +0200)
commit625eb8e85e913273cd9441329a82b4e3496b30cd
tree7a18403cd56909f3ae0f516acae4e000f57e0ce9
parent5cfd607b49db2b7c05fccc2915a528d97bc8f17d
bpf: Fix another bpftool segfault without skeleton code enabled

emit_obj_refs_json needs to added the same as with emit_obj_refs_plain
to prevent segfaults, similar to Commit "8ae4121bd89e bpf: Fix bpftool
without skeleton code enabled"). See the error below:

    # ./bpftool -p prog
    {
        "error": "bpftool built without PID iterator support"
    },[{
            "id": 2,
            "type": "cgroup_skb",
            "tag": "7be49e3934a125ba",
            "gpl_compatible": true,
            "loaded_at": 1594052789,
            "uid": 0,
            "bytes_xlated": 296,
            "jited": true,
            "bytes_jited": 203,
            "bytes_memlock": 4096,
            "map_ids": [2,3
    Segmentation fault (core dumped)

The same happens for ./bpftool -p map, as well as ./bpftool -j prog/map.

Fixes: d53dee3fe013 ("tools/bpftool: Show info for processes holding BPF map/prog/link/btf FDs")
Signed-off-by: Louis Peens <louis.peens@netronome.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Reviewed-by: Simon Horman <simon.horman@netronome.com>
Reviewed-by: Quentin Monnet <quentin@isovalent.com>
Link: https://lore.kernel.org/bpf/20200708110827.7673-1-louis.peens@netronome.com
tools/bpf/bpftool/pids.c