On Tue, Jun 23, 2020 at 1:39 PM Daniel Borkmann <[email protected]> wrote:
>
> Hey Andrii,
>
> On 6/23/20 5:22 AM, Andrii Nakryiko wrote:
> > Add selftest that validates variable-length data reading and concatentation
> > with one big shared data array. This is a common pattern in production use
> > for
> > monitoring and tracing applications, that potentially can read a lot of
> > data,
> > but overall read much less. Such pattern allows to determine precisely what
> > amount of data needs to be sent over perfbuf/ringbuf and maximize
> > efficiency.
> >
> > Signed-off-by: Andrii Nakryiko <[email protected]>
>
> Currently getting the below errors on these tests. My last clang/llvm git
> build
> is on 4676cf444ea2 ("[Clang] Skip adding begin source location for
> PragmaLoopHint'd
> loop when[...]"):
>
Yeah, you need 02553b91da5d ("bpf: bpf_probe_read_kernel_str() has to
return amount of data read on success") from bpf tree.
I'm eagerly awaiting bpf being merged into bpf-next :)
> # ./test_progs -t varlen
> test_varlen:PASS:skel_open 0 nsec
> test_varlen:PASS:skel_attach 0 nsec
> test_varlen:FAIL:check got 0 != exp 8
> test_varlen:FAIL:check got 0 != exp 7
> test_varlen:FAIL:check got 0 != exp 15
> test_varlen:FAIL:content_check doesn't match!test_varlen:FAIL:check got 0 !=
> exp 8
> test_varlen:FAIL:check got 0 != exp 7
> test_varlen:FAIL:check got 0 != exp 15
> test_varlen:FAIL:content_check doesn't match!test_varlen:FAIL:check got 0 !=
> exp 8
> test_varlen:FAIL:check got 0 != exp 7
> test_varlen:FAIL:check got 0 != exp 15
> test_varlen:FAIL:content_check doesn't match!test_varlen:FAIL:check got 0 !=
> exp 8
> test_varlen:FAIL:check got 0 != exp 7
> test_varlen:FAIL:check got 0 != exp 15
> test_varlen:FAIL:content_check doesn't match!
> #87 varlen:FAIL
> Summary: 0/0 PASSED, 0 SKIPPED, 1 FAILED
>
> # ./test_progs-no_alu32 -t varlen
> Switching to flavor 'no_alu32' subdirectory...
> test_varlen:PASS:skel_open 0 nsec
> test_varlen:PASS:skel_attach 0 nsec
> test_varlen:FAIL:check got 0 != exp 8
> test_varlen:FAIL:check got 0 != exp 7
> test_varlen:FAIL:check got 0 != exp 15
> test_varlen:FAIL:content_check doesn't match!test_varlen:FAIL:check got 0 !=
> exp 8
> test_varlen:FAIL:check got 0 != exp 7
> test_varlen:FAIL:check got 0 != exp 15
> test_varlen:FAIL:content_check doesn't match!test_varlen:FAIL:check got 0 !=
> exp 8
> test_varlen:FAIL:check got 0 != exp 7
> test_varlen:FAIL:check got 0 != exp 15
> test_varlen:FAIL:content_check doesn't match!test_varlen:FAIL:check got 0 !=
> exp 8
> test_varlen:FAIL:check got 0 != exp 7
> test_varlen:FAIL:check got 0 != exp 15
> test_varlen:FAIL:content_check doesn't match!
> #87 varlen:FAIL
> Summary: 0/0 PASSED, 0 SKIPPED, 1 FAILED
>
> Thanks,
> Daniel