On Fri, 13 Nov 2020 at 12:34, Eric Dumazet <eric.dumazet@xxxxxxxxx> wrote: > > > > On 11/13/20 11:36 AM, Björn Töpel wrote: > > I was running the selftest/bpf on riscv, and had a closer look at one > > of the failing cases: > > > > #14/p valid read map access into a read-only array 2 FAIL retval > > 65507 != -29 (run 1/1) > > > > The test does a csum_partial() call via a BPF helper. riscv uses the > > generic implementation. arm64 uses the generic csum_partial() and fail > > in the same way [1]. arm (32-bit) has a arch specfic implementation, > > and fail in another way (FAIL retval 131042 != -29) [2]. > > > > I mimicked the test case in a userland program, comparing the generic > > csum_partial() to the x86 implementation [3], and the generic and x86 > > implementation does yield a different result. > > > > x86 : -29 : 0xffffffe3 > > generic : 65507 : 0x0000ffe3 > > arm : 131042 : 0x0001ffe2 > > > > Who is correct? :-) It would be nice to get rid of this failed case... > > > > There are all the same value :), they all fold to u16 0xFFE3 > > Maybe the test needs a fix, there is a missing folding. > Ah, makes sense. Thank you! Björn