lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <CAP01T77U28HTwW2c=DEanZs09z1bFO0A+iSnAUAN+Z5r0efNew@mail.gmail.com> Date: Fri, 15 Jul 2022 13:11:36 +0200 From: Kumar Kartikeya Dwivedi <memxor@...il.com> To: Andrii Nakryiko <andrii.nakryiko@...il.com> Cc: Toke Høiland-Jørgensen <toke@...hat.com>, Alexei Starovoitov <ast@...nel.org>, Daniel Borkmann <daniel@...earbox.net>, Andrii Nakryiko <andrii@...nel.org>, Martin KaFai Lau <martin.lau@...ux.dev>, Song Liu <song@...nel.org>, Yonghong Song <yhs@...com>, John Fastabend <john.fastabend@...il.com>, KP Singh <kpsingh@...nel.org>, Stanislav Fomichev <sdf@...gle.com>, Hao Luo <haoluo@...gle.com>, Jiri Olsa <jolsa@...nel.org>, Mykola Lysenko <mykolal@...com>, "David S. Miller" <davem@...emloft.net>, Jakub Kicinski <kuba@...nel.org>, Jesper Dangaard Brouer <hawk@...nel.org>, Networking <netdev@...r.kernel.org>, bpf <bpf@...r.kernel.org>, Freysteinn Alfredsson <freysteinn.alfredsson@....se>, Cong Wang <xiyou.wangcong@...il.com>, Shuah Khan <shuah@...nel.org> Subject: Re: [RFC PATCH 15/17] selftests/bpf: Add verifier tests for dequeue prog On Thu, 14 Jul 2022 at 20:54, Andrii Nakryiko <andrii.nakryiko@...il.com> wrote: > > On Wed, Jul 13, 2022 at 11:45 PM Kumar Kartikeya Dwivedi > <memxor@...il.com> wrote: > > > > On Thu, 14 Jul 2022 at 07:38, Andrii Nakryiko <andrii.nakryiko@...il.com> wrote: > > > > > > On Wed, Jul 13, 2022 at 4:15 AM Toke Høiland-Jørgensen <toke@...hat.com> wrote: > > > > > > > > From: Kumar Kartikeya Dwivedi <memxor@...il.com> > > > > > > > > Test various cases of direct packet access (proper range propagation, > > > > comparison of packet pointers pointing into separate xdp_frames, and > > > > correct invalidation on packet drop (so that multiple packet pointers > > > > are usable safely in a dequeue program)). > > > > > > > > Signed-off-by: Kumar Kartikeya Dwivedi <memxor@...il.com> > > > > Signed-off-by: Toke Høiland-Jørgensen <toke@...hat.com> > > > > --- > > > > > > Consider writing these tests as plain C BPF code and put them in > > > test_progs, is there anything you can't express in C and thus requires > > > test_verifier? > > > > Not really, but in general I like test_verifier because it stays > > immune to compiler shenanigans. > > In general I dislike them because they are almost incomprehensible. So > unless there is a very particular sequence of low-level BPF assembly > instructions one needs to test, I'd always opt for test_progs as more > maintainable solution. > > Things like making sure that verifier rejects invalid use of > particular objects or helpers doesn't seem to rely much on particular > assembly sequence and can and should be expressed with plain C. > > > > So going forward should test_verifier tests be avoided, and normal C > > tests (using SEC("?...")) be preferred for these cases? > > In my opinion, yes, unless absolutely requiring low-level assembly to > express conditions which are otherwise hard to express reliably in C. > Ok, fair point. I will replace these with C tests in the next version. > > > > > > > > > tools/testing/selftests/bpf/test_verifier.c | 29 +++- > > > > .../testing/selftests/bpf/verifier/dequeue.c | 160 ++++++++++++++++++ > > > > 2 files changed, 180 insertions(+), 9 deletions(-) > > > > create mode 100644 tools/testing/selftests/bpf/verifier/dequeue.c > > > > > > > > > > [...]
Powered by blists - more mailing lists