btf_header
const struct btf_header *btf_header(const struct btf *btf);
const struct btf_header *hdr;
if (hdr->hdr_len >= sizeof(struct btf_header) &&
const struct btf_header *btf_header(const struct btf *btf)
struct btf_header hdr;
struct btf_header *hdr;
const struct btf_header *hdr = &env->btf->hdr;
const struct btf_header *hdr;
if (hdr->hdr_len < sizeof(struct btf_header) &&
const struct btf_header *hdr = &env->btf->hdr;
if (hdr->hdr_len < sizeof(struct btf_header) ||
offsetof(struct btf_header, type_off),
offsetof(struct btf_header, str_off),
offsetof(struct btf_header, layout_off)
const struct btf_header *hdr;
if (hdr->hdr_len < sizeof(struct btf_header) || hdr->layout_len == 0)
const struct btf_header *hdr;
if (btf_data_size < offsetofend(struct btf_header, hdr_len)) {
struct btf_header hdr;
struct btf_header hdr;
struct btf_header *hdr;
btf->raw_size = sizeof(struct btf_header) + (base_btf ? 0 : 1);
hdr->hdr_len = sizeof(struct btf_header);
const struct btf_header *hdr = &btf->hdr;
memcpy(p, hdr, min((__u32)sizeof(struct btf_header), hdr->hdr_len));
static void btf_bswap_hdr(struct btf_header *h, __u32 hdr_len)
if (hdr_len >= sizeof(struct btf_header)) {
struct btf_header *hdr = btf->raw_data;
if (btf->raw_size < offsetofend(struct btf_header, str_len)) {
if (hdr_len < offsetofend(struct btf_header, str_len)) {
memcpy(&btf->hdr, hdr, min((size_t)hdr_len, sizeof(struct btf_header)));
if (hdr_len > sizeof(struct btf_header)) {
for (i = sizeof(struct btf_header); i < hdr_len; i++) {
const struct btf_header *btf_header(const struct btf *btf)
const struct btf_header *dist_base_hdr;
const struct btf_header *base_hdr;
r.str_map = calloc(btf_header(r.dist_base_btf)->str_len, sizeof(*r.str_map));
dist_base_hdr = btf_header(r.dist_base_btf);
base_hdr = btf_header(r.base_btf);
struct btf_header hdr = {
.hdr_len = sizeof(struct btf_header),
const struct btf_header *hdr;
hdr = btf_header(orig_btf);
if (!has_layout && hdr->hdr_len >= sizeof(struct btf_header) &&
const struct btf_header *old_hdr = raw_data;
struct btf_header *new_hdr;
const struct btf_header *btf_header(const struct btf *btf);
int libbpf__load_raw_btf_hdr(const struct btf_header *hdr,
int libbpf__load_raw_btf_hdr(const struct btf_header *hdr, const char *raw_types,
struct btf_header hdr = {
.hdr_len = sizeof(struct btf_header),
struct btf_header btf_hdr = {
.hdr_len = sizeof(struct btf_header),
__u8 raw_btf[sizeof(struct btf_header) + sizeof(btf_raw_types) +
static void *btf_raw_create(const struct btf_header *hdr,
struct btf_header *ret_hdr;
ret_hdr = (struct btf_header *)raw_btf;
struct btf_header *hdr;
static struct btf_header hdr_tmpl = {
.hdr_len = sizeof(struct btf_header),
const struct btf_header *test_hdr, *expect_hdr;
const struct btf_header *hdr;
const struct btf_header *hdr;
struct btf_header *hdr;
struct btf_header hdr;
.hdr_len = sizeof(struct btf_header),
const struct btf_header *hdr;
hdr = (struct btf_header *)raw;
hdr = (struct btf_header *)raw;
struct btf_header hdr;
.hdr_len = sizeof(struct btf_header),
struct btf_header btf_hdr;
.hdr_len = sizeof(struct btf_header),
struct btf_header btf_hdr;
.hdr_len = sizeof(struct btf_header),
struct btf_header hdr = {
.hdr_len = sizeof(struct btf_header),