On 04/19/2018 12:55 AM, Martin KaFai Lau wrote: > This patch introduces BPF Type Format (BTF). > > BTF (BPF Type Format) is the meta data format which describes > the data types of BPF program/map. Hence, it basically focus > on the C programming language which the modern BPF is primary > using. The first use case is to provide a generic pretty print > capability for a BPF map. > > A modified pahole that can convert dwarf to BTF is here: > https://github.com/iamkafai/pahole/tree/btf > (Arnaldo, there is some BTF_KIND numbering changes on > Apr 18th, d61426c1571) > > Please see individual patch for details. > > v5: > - Remove BTF_KIND_FLOAT and BTF_KIND_FUNC which are not > currently used. They can be added in the future. > Some bpf_df_xxx() are removed together. > - Add comment in patch 7 to clarify that the new bpffs_map_fops > should not be extended further. > > v4: > - Fix warning (remove unneeded semicolon) > - Remove a redundant variable (nr_bytes) from btf_int_check_meta() in > patch 1. Caught by W=1. > > v3: > - Rebase to bpf-next > - Fix sparse warning (by adding static) > - Add BTF header logging: btf_verifier_log_hdr() > - Fix the alignment test on btf->type_off > - Add tests for the BTF header > - Lower the max BTF size to 16MB. It should be enough > for some time. We could raise it later if it would > be needed. > > v2: > - Use kvfree where needed in patch 1 and 2 > - Also consider BTF_INT_OFFSET() in the btf_int_check_meta() > in patch 1 > - Fix an incorrect goto target in map_create() during > the btf-error-path in patch 7 > - re-org some local vars to keep the rev xmas tree in btf.c
Series applied to bpf-next, thanks Martin. As discussed please follow up with the bpftool patches. Thanks, Daniel