Michal Rostecki wrote: > On 11/9/20 8:04 AM, Wang Hai wrote: > > progfd is created by prog_parse_fd(), before 'bpftool net attach' exit, > > it should be closed. > > > > Fixes: 04949ccc273e ("tools: bpftool: add net attach command to attach XDP on interface") > > Signed-off-by: Wang Hai <wanghai38@xxxxxxxxxx> > > --- > > tools/bpf/bpftool/net.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/tools/bpf/bpftool/net.c b/tools/bpf/bpftool/net.c > > index 910e7bac6e9e..3e9b40e64fb0 100644 > > --- a/tools/bpf/bpftool/net.c > > +++ b/tools/bpf/bpftool/net.c > > @@ -600,12 +600,14 @@ static int do_attach(int argc, char **argv) > > if (err < 0) { > > p_err("interface %s attach failed: %s", > > attach_type_strings[attach_type], strerror(-err)); > > + close(progfd); > > return err; > > } > > > > if (json_output) > > jsonw_null(json_wtr); > > > > + close(progfd); > > return 0; > > } > > > > Nit - wouldn't it be better to create a `cleanup`/`out` section before > return and use goto, to avoid copying the `close` call? I agree would be nicer.