> On Aug 14, 2019, at 5:03 PM, Anton Protopopov <a.s.protopopov@xxxxxxxxx> wrote: > [...] > > > int bpf_object__unload(struct bpf_object *obj) > diff --git a/tools/lib/bpf/libbpf.h b/tools/lib/bpf/libbpf.h > index e8f70977d137..634f278578dd 100644 > --- a/tools/lib/bpf/libbpf.h > +++ b/tools/lib/bpf/libbpf.h > @@ -63,8 +63,13 @@ LIBBPF_API libbpf_print_fn_t libbpf_set_print(libbpf_print_fn_t fn); > struct bpf_object; > > struct bpf_object_open_attr { > - const char *file; > + union { > + const char *file; > + const char *obj_name; > + }; > enum bpf_prog_type prog_type; > + void *obj_buf; > + size_t obj_buf_sz; > }; I think this would break dynamically linked libbpf. No? Thanks, Song