[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAEf4BzZ2zjJKhyUtZKUxbNXJMggcot4MyNEeg6n4Lho-EVbBbg@mail.gmail.com>
Date: Thu, 6 Apr 2023 13:48:52 -0700
From: Andrii Nakryiko <andrii.nakryiko@...il.com>
To: Daniel Rosenberg <drosen@...gle.com>
Cc: bpf@...r.kernel.org, Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
John Fastabend <john.fastabend@...il.com>,
Andrii Nakryiko <andrii@...nel.org>,
Martin KaFai Lau <martin.lau@...ux.dev>,
Song Liu <song@...nel.org>, Yonghong Song <yhs@...com>,
KP Singh <kpsingh@...nel.org>,
Stanislav Fomichev <sdf@...gle.com>,
Hao Luo <haoluo@...gle.com>, Jiri Olsa <jolsa@...nel.org>,
Shuah Khan <shuah@...nel.org>,
Jonathan Corbet <corbet@....net>,
Joanne Koong <joannelkoong@...il.com>,
Mykola Lysenko <mykolal@...com>, linux-kernel@...r.kernel.org,
linux-kselftest@...r.kernel.org, kernel-team@...roid.com
Subject: Re: [PATCH 0/3] Dynptr Verifier Adjustments
On Wed, Apr 5, 2023 at 5:40 PM Daniel Rosenberg <drosen@...gle.com> wrote:
>
> These patches relax a few verifier requirements around dynptrs.
>
> I was unable to test the patch in 0003 due to unrelated issues compiling the
> bpf selftests, but did run an equivalent local test program.
>
> This is the issue I was running into:
> progs/cgrp_ls_attach_cgroup.c:17:15: error: use of undeclared identifier 'BPF_MAP_TYPE_CGRP_STORAGE'; did you mean 'BPF_MAP_TYPE_CGROUP_STORAGE'?
> __uint(type, BPF_MAP_TYPE_CGRP_STORAGE);
> ^~~~~~~~~~~~~~~~~~~~~~~~~
> BPF_MAP_TYPE_CGROUP_STORAGE
> /ssd/kernel/fuse-bpf/tools/testing/selftests/bpf/tools/include/bpf/bpf_helpers.h:13:39: note: expanded from macro '__uint'
> #define __uint(name, val) int (*name)[val]
> ^
> /ssd/kernel/fuse-bpf/tools/testing/selftests/bpf/tools/include/vmlinux.h:27892:2: note: 'BPF_MAP_TYPE_CGROUP_STORAGE' declared here
> BPF_MAP_TYPE_CGROUP_STORAGE = 19,
> ^
> 1 error generated.
It is expected that you build the freshest vmlinux image before
building selftests, because we generate vmlinux.h from it. In your
case we generated vmlinux.h from your system-wide
/sys/kernel/btf/vmlinux BTF information, which doesn't yet have latest
UAPI enums.
>
> Daniel Rosenberg (3):
> bpf: verifier: Accept dynptr mem as mem in helpers
> bpf: Allow NULL buffers in bpf_dynptr_slice(_rw)
> selftests/bpf: Test allowing NULL buffer in dynptr slice
>
> Documentation/bpf/kfuncs.rst | 23 ++++++++++++-
> kernel/bpf/helpers.c | 32 ++++++++++++-------
> kernel/bpf/verifier.c | 21 ++++++++++++
> .../testing/selftests/bpf/prog_tests/dynptr.c | 1 +
> .../selftests/bpf/progs/dynptr_success.c | 21 ++++++++++++
> 5 files changed, 85 insertions(+), 13 deletions(-)
>
>
> base-commit: 5af607a861d43ffff830fc1890033e579ec44799
> --
> 2.40.0.577.gac1e443424-goog
>
Powered by blists - more mailing lists