This patch cleans up btf.h in uapi: 1) Rename "name" to "name_off" to better reflect it is an offset to the string section instead of a char array. 2) Remove unused value BTF_FLAGS_COMPR and BTF_MAGIC_SWAP
Unified · Split
| @@ -6,9 +6,7 @@ · 5 unmodified lines | ||
| 6 | 6 | #include <linux/types.h> |
| 7 | 7 | |
| 8 | 8 | #define BTF_MAGIC 0xeB9F |
| 9 | −#define BTF_MAGIC_SWAP 0x9FeB | |
| 10 | 9 | #define BTF_VERSION 1 |
| 11 | −#define BTF_FLAGS_COMPR 0x01 | |
| 12 | 10 | |
| 13 | 11 | struct btf_header { |
| 14 | 12 | __u16 magic; |
| @@ -43,7 +41,7 @@ struct btf_header { · 28 unmodified lines | ||
| 43 | 41 | #define BTF_STR_OFFSET(ref) ((ref) & BTF_MAX_NAME_OFFSET) |
| 44 | 42 | |
| 45 | 43 | struct btf_type { |
| 46 | − __u32 name; | |
| 44 | + __u32 name_off; | |
| 47 | 45 | /* "info" bits arrangement |
| 48 | 46 | * bits 0-15: vlen (e.g. # of struct's members) |
| 49 | 47 | * bits 16-23: unused |
| @@ -105,7 +103,7 @@ struct btf_type { · 55 unmodified lines | ||
| 105 | 103 | * info in "struct btf_type"). |
| 106 | 104 | */ |
| 107 | 105 | struct btf_enum { |
| 108 | − __u32 name; | |
| 106 | + __u32 name_off; | |
| 109 | 107 | __s32 val; |
| 110 | 108 | }; |
| 111 | 109 | |
| @@ -122,7 +120,7 @@ struct btf_array { · 10 unmodified lines | ||
| 122 | 120 | * "struct btf_type"). |
| 123 | 121 | */ |
| 124 | 122 | struct btf_member { |
| 125 | − __u32 name; | |
| 123 | + __u32 name_off; | |
| 126 | 124 | __u32 type; |
| 127 | 125 | __u32 offset; /* offset in bits */ |
| 128 | 126 | }; |
| @@ -473,7 +473,7 @@ __printf(4, 5) static void __btf_verifier_log_type(struct btf_verifier_env *env, · 472 unmodified lines | ||
| 473 | 473 | __btf_verifier_log(log, "[%u] %s %s%s", |
| 474 | 474 | env->log_type_id, |
| 475 | 475 | btf_kind_str[kind], |
| 476 | − btf_name_by_offset(btf, t->name), | |
| 476 | + btf_name_by_offset(btf, t->name_off), | |
| 477 | 477 | log_details ? " " : ""); |
| 478 | 478 | |
| 479 | 479 | if (log_details) |
| @@ -517,7 +517,7 @@ static void btf_verifier_log_member(struct btf_verifier_env *env, · 37 unmodified lines | ||
| 517 | 517 | btf_verifier_log_type(env, struct_type, NULL); |
| 518 | 518 | |
| 519 | 519 | __btf_verifier_log(log, "\t%s type_id=%u bits_offset=%u", |
| 520 | − btf_name_by_offset(btf, member->name), | |
| 520 | + btf_name_by_offset(btf, member->name_off), | |
| 521 | 521 | member->type, member->offset); |
| 522 | 522 | |
| 523 | 523 | if (fmt && *fmt) { |
| @@ -1419,10 +1419,10 @@ static s32 btf_struct_check_meta(struct btf_verifier_env *env, · 895 unmodified lines | ||
| 1419 | 1419 | btf_verifier_log_type(env, t, NULL); |
| 1420 | 1420 | |
| 1421 | 1421 | for_each_member(i, t, member) { |
| 1422 | − if (!btf_name_offset_valid(btf, member->name)) { | |
| 1422 | + if (!btf_name_offset_valid(btf, member->name_off)) { | |
| 1423 | 1423 | btf_verifier_log_member(env, t, member, |
| 1424 | 1424 | "Invalid member name_offset:%u", |
| 1425 | − member->name); | |
| 1425 | + member->name_off); | |
| 1426 | 1426 | return -EINVAL; |
| 1427 | 1427 | } |
| 1428 | 1428 | |
| @@ -1605,14 +1605,14 @@ static s32 btf_enum_check_meta(struct btf_verifier_env *env, · 176 unmodified lines | ||
| 1605 | 1605 | btf_verifier_log_type(env, t, NULL); |
| 1606 | 1606 | |
| 1607 | 1607 | for (i = 0; i < nr_enums; i++) { |
| 1608 | − if (!btf_name_offset_valid(btf, enums[i].name)) { | |
| 1608 | + if (!btf_name_offset_valid(btf, enums[i].name_off)) { | |
| 1609 | 1609 | btf_verifier_log(env, "\tInvalid name_offset:%u", |
| 1610 | − enums[i].name); | |
| 1610 | + enums[i].name_off); | |
| 1611 | 1611 | return -EINVAL; |
| 1612 | 1612 | } |
| 1613 | 1613 | |
| 1614 | 1614 | btf_verifier_log(env, "\t%s val=%d\n", |
| 1615 | − btf_name_by_offset(btf, enums[i].name), | |
| 1615 | + btf_name_by_offset(btf, enums[i].name_off), | |
| 1616 | 1616 | enums[i].val); |
| 1617 | 1617 | } |
| 1618 | 1618 | |
| @@ -1636,7 +1636,7 @@ static void btf_enum_seq_show(const struct btf *btf, const struct btf_type *t, · 17 unmodified lines | ||
| 1636 | 1636 | for (i = 0; i < nr_enums; i++) { |
| 1637 | 1637 | if (v == enums[i].val) { |
| 1638 | 1638 | seq_printf(m, "%s", |
| 1639 | − btf_name_by_offset(btf, enums[i].name)); | |
| 1639 | + btf_name_by_offset(btf, enums[i].name_off)); | |
| 1640 | 1640 | return; |
| 1641 | 1641 | } |
| 1642 | 1642 | } |
| @@ -1687,9 +1687,9 @@ static s32 btf_check_meta(struct btf_verifier_env *env, · 44 unmodified lines | ||
| 1687 | 1687 | return -EINVAL; |
| 1688 | 1688 | } |
| 1689 | 1689 | |
| 1690 | − if (!btf_name_offset_valid(env->btf, t->name)) { | |
| 1690 | + if (!btf_name_offset_valid(env->btf, t->name_off)) { | |
| 1691 | 1691 | btf_verifier_log(env, "[%u] Invalid name_offset:%u", |
| 1692 | − env->log_type_id, t->name); | |
| 1692 | + env->log_type_id, t->name_off); | |
| 1693 | 1693 | return -EINVAL; |
| 1694 | 1694 | } |
| 1695 | 1695 | |
| @@ -6,9 +6,7 @@ · 5 unmodified lines | ||
| 6 | 6 | #include <linux/types.h> |
| 7 | 7 | |
| 8 | 8 | #define BTF_MAGIC 0xeB9F |
| 9 | −#define BTF_MAGIC_SWAP 0x9FeB | |
| 10 | 9 | #define BTF_VERSION 1 |
| 11 | −#define BTF_FLAGS_COMPR 0x01 | |
| 12 | 10 | |
| 13 | 11 | struct btf_header { |
| 14 | 12 | __u16 magic; |
| @@ -43,7 +41,7 @@ struct btf_header { · 28 unmodified lines | ||
| 43 | 41 | #define BTF_STR_OFFSET(ref) ((ref) & BTF_MAX_NAME_OFFSET) |
| 44 | 42 | |
| 45 | 43 | struct btf_type { |
| 46 | − __u32 name; | |
| 44 | + __u32 name_off; | |
| 47 | 45 | /* "info" bits arrangement |
| 48 | 46 | * bits 0-15: vlen (e.g. # of struct's members) |
| 49 | 47 | * bits 16-23: unused |
| @@ -105,7 +103,7 @@ struct btf_type { · 55 unmodified lines | ||
| 105 | 103 | * info in "struct btf_type"). |
| 106 | 104 | */ |
| 107 | 105 | struct btf_enum { |
| 108 | − __u32 name; | |
| 106 | + __u32 name_off; | |
| 109 | 107 | __s32 val; |
| 110 | 108 | }; |
| 111 | 109 | |
| @@ -122,7 +120,7 @@ struct btf_array { · 10 unmodified lines | ||
| 122 | 120 | * "struct btf_type"). |
| 123 | 121 | */ |
| 124 | 122 | struct btf_member { |
| 125 | − __u32 name; | |
| 123 | + __u32 name_off; | |
| 126 | 124 | __u32 type; |
| 127 | 125 | __u32 offset; /* offset in bits */ |
| 128 | 126 | }; |
| @@ -281,7 +281,7 @@ int32_t btf__find_by_name(const struct btf *btf, const char *type_name) · 280 unmodified lines | ||
| 281 | 281 | |
| 282 | 282 | for (i = 1; i <= btf->nr_types; i++) { |
| 283 | 283 | const struct btf_type *t = btf->types[i]; |
| 284 | − const char *name = btf_name_by_offset(btf, t->name); | |
| 284 | + const char *name = btf_name_by_offset(btf, t->name_off); | |
| 285 | 285 | |
| 286 | 286 | if (name && !strcmp(type_name, name)) |
| 287 | 287 | return i; |