Hi ,
I did some more tests , Please find the observation below.
step 1: On v5.4.210 kernel , I reverted only commit bpf: Verifer, adjust_scalar_min_max_vals to always call update_reg_bounds() 7c1134c7da997523e2834dd516e2ddc51920699a , compiled the kernel and booted the system with the new kernel. step 2: On system with newly compiled kernel , I clone the v54.4.210 source code and reverted commit selftests/bpf: Fix test_align verifier log patterns and selftests/bpf: Fix "dubious pointer arithmetic" test , then ran the selftests, test_align test cases execution was successful. step 3: If i revert only selftests/bpf: Fix "dubious pointer arithmetic" test , test cases are still failing.
Please find the attached PDF for the other scenarios which I have executed.
Thanks, Rajesh Dasari.
On Fri, Aug 19, 2022 at 1:57 PM Greg KH gregkh@linuxfoundation.org wrote:
On Thu, Aug 18, 2022 at 08:55:16AM +0100, Jean-Philippe Brucker wrote:
On Thu, Aug 18, 2022 at 07:24:03AM +0200, Greg KH wrote:
On Wed, Aug 17, 2022 at 09:22:00PM +0300, RAJESH DASARI wrote:
Hi ,
We are running bpf selftests on 5.4.210 kernel version and we see that test case 11 of test_align failed. Please find the below error.
selftests: bpf: test_align Test 11: pointer variable subtraction ... Failed to find match 16: R5_w=pkt(id=2,off=0,r=0,umin_value=2,umax_value=1082,var_off=(0x2; 0xfffffffc) # func#0 @0 # 0: R1=ctx(id=0,off=0,imm=0) R10=fp0 # 0: (61) r2 = *(u32 *)(r1 +76) # 1: R1=ctx(id=0,off=0,imm=0) R2_w=pkt(id=0,off=0,r=0,imm=0) R10=fp0 # 1: (61) r3 = *(u32 *)(r1 +80)
For complete errors please see the attached file. The same test case execution was successful in the 5.4.209 version , could you please let me know any known issue with the recent changes in 5.4.210 and how to fix these errors.
Can you use 'git bisect' to find the offending commit?
It probably is 6098562ed9df ("selftests/bpf: Fix "dubious pointer arithmetic" test") https://lore.kernel.org/all/20220803145005.2385039-6-ovidiu.panait@windriver... Could you try reverting that?
The patch didn't have a Fixes: tags, because the bugfix it refers to was merged at the same time. That bugfix is upstream commit b02709587ea3 ("bpf: Fix propagation of 32-bit signed bounds from 64-bit bounds.")
Since b02709587ea3 was only backported down to 5.10, this fix shouldn't be in 5.4. Sorry for not catching this earlier.
Can you send in a revert for this?
thanks,
greg k-h