On Wed, 2024-01-03 at 15:26 -0800, Yonghong Song wrote: > With patch set [1], precision backtracing supports register spill/fill > to/from the stack. The patch [2] allows initial imprecise register spill > with content 0. This is a common case for cpuv3 and lower for > initializing the stack variables with pattern > r1 = 0 > *(u64 *)(r10 - 8) = r1 > and the [2] has demonstrated good verification improvement. > > For cpuv4, the initialization could be > *(u64 *)(r10 - 8) = 0 > The current verifier marks the r10-8 contents with STACK_ZERO. > Similar to [2], let us permit the above insn to behave like > imprecise register spill which can reduce number of verified states. > The change is in function check_stack_write_fixed_off(). Hi Yonghong, I agree with this change, but I don't understand under which conditions current STACK_ZERO logic is sub-optimal. I tried executing test case from patch #2 w/o applying patch #1 and it passes. Could you please elaborate / conjure a test case that would fail w/o patch #1? Thanks, Eduard [...]