Re: [RFC PATCH v3 12/37] bpf tools: Collect version and license from ELF sections

Alexei Starovoitov
2015-05-18T18:27:21Z

On 5/17/15 3:56 AM, Wang Nan wrote:
> Expand bpf_obj_elf_collect() to collect license and kernel version
> information in eBPF object file. eBPF object file should have a section
> named 'license', which contains a string. It should also have a section
> named 'version', contains a u32 LINUX_VERSION_CODE.
>
> bpf_obj_validate() is introduced to validate object file after loaded.
> Currently it only check existance of 'version' section.
>
> Signed-off-by: Wang Nan <wangnan0@huawei.com>
...
> +#ifdef min
> +# undef min
> +#endif
> +#define min(x, y) ({ \
> + typeof(x) _min1 = (x); \
> + typeof(y) _min2 = (y); \
> + (void) (&_min1 == &_min2); \
> + _min1 < _min2 ? _min1 : _min2; })
> +

copy-paste from lib traceevent?
there is another container_of copy-paste later in the patches.
please use something like tools/lib/bpf/utils.h file for such
things, so we can consolidate and share this code later.