Re: [PATCH bpf-next] selftests/bpf: Don't assume page size is 4096

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Mar 27, 2023 at 9:37 AM Stanislav Fomichev <sdf@xxxxxxxxxx> wrote:
>
> On 03/26, Hengqi Chen wrote:
> > The verifier test creates BPF ringbuf maps using hard-coded
> > 4096 as max_entries. Some tests will fail if the page size
> > of the running kernel is not 4096. Use getpagesize() instead.
>
> > Signed-off-by: Hengqi Chen <hengqi.chen@xxxxxxxxx>
>
> Can you share which platform that is? The fix seems ok, but
> I'm assuming that we have many more places where 4k is hardcoded :-)

We did have a bunch of fixes over time removing hard-coded page size
usage, so there should be fewer such places than you might think :)
But quick grepping for "4096" shows a bunch of matches. Not all of
them are page size, but it would indeed be good to audit.

For now, I applied this patch, as it is correct and helps. Thanks!

>
>
> > ---
> >   tools/testing/selftests/bpf/test_verifier.c | 2 +-
> >   1 file changed, 1 insertion(+), 1 deletion(-)
>
> > diff --git a/tools/testing/selftests/bpf/test_verifier.c
> > b/tools/testing/selftests/bpf/test_verifier.c
> > index 5b90eef09ade..e4657c5bc3f1 100644
> > --- a/tools/testing/selftests/bpf/test_verifier.c
> > +++ b/tools/testing/selftests/bpf/test_verifier.c
> > @@ -1079,7 +1079,7 @@ static void do_test_fixup(struct bpf_test *test,
> > enum bpf_prog_type prog_type,
> >       }
> >       if (*fixup_map_ringbuf) {
> >               map_fds[20] = create_map(BPF_MAP_TYPE_RINGBUF, 0,
> > -                                        0, 4096);
> > +                                      0, getpagesize());
> >               do {
> >                       prog[*fixup_map_ringbuf].imm = map_fds[20];
> >                       fixup_map_ringbuf++;
> > --
> > 2.31.1




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux