From: Andrii Nakryiko Date: Fri, 1 Oct 2021 22:31:51 +0000 (-0700) Subject: Merge branch 'libbpf: Support uniform BTF-defined key/value specification across... X-Git-Tag: v5.16-rc1~159^2~303^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d636c8da2d60cc4841ebd7b6e6a02db5c33e11e4;p=thirdparty%2Fkernel%2Flinux.git Merge branch 'libbpf: Support uniform BTF-defined key/value specification across all BPF maps' Hengqi Chen says: ==================== Currently a bunch of (usually pretty specialized) BPF maps do not support specifying BTF types for they key and value. For such maps, specifying their definition like this: struct { __uint(type, BPF_MAP_TYPE_PERF_EVENT_ARRAY); __type(key, int); __type(value, int); } my_perf_buf SEC(".maps"); Would actually produce warnings about retrying BPF map creation without BTF. Users are forced to know such nuances and use __uint(key_size, 4) instead. This is non-uniform, annoying, and inconvenient. This patch set teaches libbpf to recognize those specialized maps and removes BTF type IDs when creating BPF map. Also, update existing BPF selftests to exericse this change. ==================== Signed-off-by: Andrii Nakryiko --- d636c8da2d60cc4841ebd7b6e6a02db5c33e11e4