Re: [PATCH bpf] libbpf: Return btf_fd in libbpf__probe_raw_btf

From: Sergei Shtylyov
Date: Wed May 29 2019 - 05:57:35 EST


Hello!

On 29.05.2019 11:29, Michal Rostecki wrote:

Function load_sk_storage_btf expects that libbpf__probe_raw_btf is
returning a btf descriptor, but before this change it was returning
an information about whether the probe was successful (0 or 1).
load_sk_storage_btf was using that value as an argument to the close
function, which was resulting in closing stdout and thus terminating the
process which used that dunction.

Function? :-)

That bug was visible in bpftool. `bpftool feature` subcommand was always
exiting too early (because of closed stdout) and it didn't display all
requested probes. `bpftool -j feature` or `bpftool -p feature` were not
returning a valid json object.

Fixes: d7c4b3980c18 ("libbpf: detect supported kernel BTF features and sanitize BTF")
Signed-off-by: Michal Rostecki <mrostecki@xxxxxxxxxxxx>
[...]

MBR, Sergei