summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Syromyatnikov <evgsyr@gmail.com>2021-08-02 17:39:07 +0200
committerDmitry V. Levin <ldv@strace.io>2021-08-02 15:39:07 +0000
commit622860bcff04de1086a591a08bf49e9a380bef7c (patch)
treebf55ad6f45d05dea3072f38ba5a79a9a30789d4a
parentad5efa179453e6c601217d4f1bd6b5683f631ed2 (diff)
downloadstrace-622860bcff04de1086a591a08bf49e9a380bef7c.tar.gz
xlat: update BPF_* constants
* src/xlat/bpf_attach_type.in (BPF_SK_REUSEPORT_SELECT, BPF_SK_REUSEPORT_SELECT_OR_MIGRATE): New constants, introduced by Linux commit v5.14-rc1~119^2~135^2~7^2~2. * src/xlat/bpf_prog_types.in (BPF_PROG_TYPE_SYSCALL): New constant, introduced by Linux commit v5.14-rc1~119^2~501^2~2^2~20. * NEWS: Mention this. * tests/bpf.c: Update the relevant checks.
-rw-r--r--NEWS2
-rw-r--r--src/xlat/bpf_attach_type.in2
-rw-r--r--src/xlat/bpf_prog_types.in1
-rw-r--r--tests/bpf.c20
-rw-r--r--tests/kernel_version.c6
5 files changed, 17 insertions, 14 deletions
diff --git a/NEWS b/NEWS
index 1fd43bf27..293fabcb2 100644
--- a/NEWS
+++ b/NEWS
@@ -4,7 +4,7 @@ Noteworthy changes in release ?.?? (????-??-??)
* Improvements
* Implemented decoding of memfd_secret and quotactl_fd syscalls,
introduced in Linux 5.14.
- * Updated lists of IORING_*, MADV_*, SCTP_*, and UFFD_* constants.
+ * Updated lists of BPF_*, IORING_*, MADV_*, SCTP_*, and UFFD_* constants.
* Bug fixes
* Fixed build using bionic libc.
diff --git a/src/xlat/bpf_attach_type.in b/src/xlat/bpf_attach_type.in
index c9e603c2d..c9419390e 100644
--- a/src/xlat/bpf_attach_type.in
+++ b/src/xlat/bpf_attach_type.in
@@ -38,3 +38,5 @@ BPF_XDP_CPUMAP 35
BPF_SK_LOOKUP 36
BPF_XDP 37
BPF_SK_SKB_VERDICT 38
+BPF_SK_REUSEPORT_SELECT 39
+BPF_SK_REUSEPORT_SELECT_OR_MIGRATE 40
diff --git a/src/xlat/bpf_prog_types.in b/src/xlat/bpf_prog_types.in
index 2fcb1ef91..f1a2d1ad4 100644
--- a/src/xlat/bpf_prog_types.in
+++ b/src/xlat/bpf_prog_types.in
@@ -30,3 +30,4 @@ BPF_PROG_TYPE_STRUCT_OPS 27
BPF_PROG_TYPE_EXT 28
BPF_PROG_TYPE_LSM 29
BPF_PROG_TYPE_SK_LOOKUP 30
+BPF_PROG_TYPE_SYSCALL 31
diff --git a/tests/bpf.c b/tests/bpf.c
index afa9d9c06..17a61d315 100644
--- a/tests/bpf.c
+++ b/tests/bpf.c
@@ -646,8 +646,8 @@ print_BPF_PROG_LOAD_attr4(const struct bpf_attr_check *check, unsigned long addr
license, IFINDEX_LO_STR);
}
-static_assert(ARRAY_SIZE(bpf_prog_types_xdata) == 31,
- "The prog_type for test 5 below needs to be updated");
+static_assert(ARRAY_SIZE(bpf_prog_types_xdata) == 32,
+ "The prog_type for tests 1 and 5 below needs to be updated");
static struct bpf_attr_check BPF_PROG_LOAD_checks[] = {
{
.data = { .BPF_PROG_LOAD_data = { .prog_type = 1 } },
@@ -657,7 +657,7 @@ static struct bpf_attr_check BPF_PROG_LOAD_checks[] = {
},
{ /* 1 */
.data = { .BPF_PROG_LOAD_data = {
- .prog_type = 31,
+ .prog_type = 32,
.insn_cnt = 0xbadc0ded,
.insns = 0,
.license = 0,
@@ -668,7 +668,7 @@ static struct bpf_attr_check BPF_PROG_LOAD_checks[] = {
.prog_flags = 0,
} },
.size = offsetofend(struct BPF_PROG_LOAD_struct, prog_flags),
- .str = "prog_type=0x1f /* BPF_PROG_TYPE_??? */"
+ .str = "prog_type=0x20 /* BPF_PROG_TYPE_??? */"
", insn_cnt=3134983661, insns=NULL, license=NULL"
", log_level=42, log_size=3141592653, log_buf=NULL"
", kern_version=KERNEL_VERSION(51966, 240, 13)"
@@ -731,7 +731,7 @@ static struct bpf_attr_check BPF_PROG_LOAD_checks[] = {
},
{ /* 5 */
.data = { .BPF_PROG_LOAD_data = {
- .prog_type = 30,
+ .prog_type = 31,
.insn_cnt = 0xbadc0ded,
.insns = 0xffffffff00000000,
.license = 0xffffffff00000000,
@@ -743,7 +743,7 @@ static struct bpf_attr_check BPF_PROG_LOAD_checks[] = {
.prog_name = "fedcba987654321",
} },
.size = offsetofend(struct BPF_PROG_LOAD_struct, prog_name),
- .str = "prog_type=BPF_PROG_TYPE_SK_LOOKUP"
+ .str = "prog_type=BPF_PROG_TYPE_SYSCALL"
", insn_cnt=3134983661"
", insns=" BIG_ADDR("0xffffffff00000000", "NULL")
", license=" BIG_ADDR("0xffffffff00000000", "NULL")
@@ -1133,13 +1133,13 @@ static struct bpf_attr_check BPF_PROG_QUERY_checks[] = {
{ /* 1 */
.data = { .BPF_PROG_QUERY_data = {
.target_fd = 3141592653U,
- .attach_type = 38,
+ .attach_type = 40,
.query_flags = 1,
.attach_flags = 3,
} },
.size = offsetofend(struct BPF_PROG_QUERY_struct, attach_flags),
.str = "query={target_fd=-1153374643"
- ", attach_type=BPF_SK_SKB_VERDICT"
+ ", attach_type=BPF_SK_REUSEPORT_SELECT_OR_MIGRATE"
", query_flags=BPF_F_QUERY_EFFECTIVE"
", attach_flags=BPF_F_ALLOW_OVERRIDE|BPF_F_ALLOW_MULTI"
", prog_ids=NULL, prog_cnt=0}",
@@ -1147,7 +1147,7 @@ static struct bpf_attr_check BPF_PROG_QUERY_checks[] = {
{ /* 2 */
.data = { .BPF_PROG_QUERY_data = {
.target_fd = 3141592653U,
- .attach_type = 39,
+ .attach_type = 41,
.query_flags = 0xfffffffe,
.attach_flags = 0xfffffff8,
.prog_ids = 0xffffffffffffffffULL,
@@ -1155,7 +1155,7 @@ static struct bpf_attr_check BPF_PROG_QUERY_checks[] = {
} },
.size = offsetofend(struct BPF_PROG_QUERY_struct, prog_cnt),
.str = "query={target_fd=-1153374643"
- ", attach_type=0x27 /* BPF_??? */"
+ ", attach_type=0x29 /* BPF_??? */"
", query_flags=0xfffffffe /* BPF_F_QUERY_??? */"
", attach_flags=0xfffffff8 /* BPF_F_??? */"
", prog_ids="
diff --git a/tests/kernel_version.c b/tests/kernel_version.c
index 692f94a1e..c79e93cdb 100644
--- a/tests/kernel_version.c
+++ b/tests/kernel_version.c
@@ -34,9 +34,9 @@ static void
print_bpf_attr(void)
{
#if XLAT_RAW
- printf("{prog_type=0x1f"
+ printf("{prog_type=0x20"
#else
- printf("{prog_type=0x1f /* BPF_PROG_TYPE_??? */"
+ printf("{prog_type=0x20 /* BPF_PROG_TYPE_??? */"
#endif
", insn_cnt=3134983661"
", insns=NULL"
@@ -79,7 +79,7 @@ main(void)
{
long ret;
struct BPF_PROG_LOAD_struct prog = {
- .prog_type = 31,
+ .prog_type = 32,
.insn_cnt = 0xbadc0ded,
.insns = 0,
.license = 0,