From: Alexei Starovoitov Date: Fri, 22 Nov 2019 18:29:38 +0000 (-0800) Subject: Merge branch 'jmp32-reg-bounds' X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=161f3cbcda06aa70faed6b703066fedbd7653e23;p=linux.git Merge branch 'jmp32-reg-bounds' Yonghong Song says: ==================== With latest llvm, bpf selftest test_progs, which has +alu32 enabled, failed for strobemeta.o and a few other subtests. The reason is due to that verifier did not provide better var_off.mask after jmp32 instructions. This patch set addressed this issue and after the fix, test_progs passed with alu32. Patch #1 provided detailed explanation of the problem and the fix. Patch #2 added three tests in test_verifier. Changelog: v1 -> v2: - do not directly manipulate tnum.{value,mask} in __reg_bound_offset32(), using tnum_lshift/tnum_rshift functions instead - do __reg_bound_offset32() after regular 64bit __reg_bound_offset() since the latter may give a better upper 32bit var_off, which can be inherited by __reg_bound_offset32(). ==================== Signed-off-by: Alexei Starovoitov --- 161f3cbcda06aa70faed6b703066fedbd7653e23