On Mon, Sep 20, 2021 at 07:32:34PM -0700, Alexei Starovoitov wrote: > On Mon, Sep 20, 2021 at 06:31:22PM -0700, Martin KaFai Lau wrote: > > It is a simplified example that can trigger a 32bit scalar spill. > > The const scalar is refilled and added to a skb->data later. > > Since the reg state of the 32bit scalar spill is not saved now, > > adding the refilled reg to skb->data and then comparing it with > > skb->data_end cannot verify the skb->data access. > > > > With the earlier verifier patch and the llvm patch [1]. The verifier > > can correctly verify the bpf prog. > > Let's land llvm patch and wait until CI picks up the new llvm build? > Please add a comment to selftests/bpf/README.rst that describes > the failing test when llvm is old. > I'm guessing there is no easier way to reliably skip the test > in such situation, since failure to load might be the result > of some future changes. > llvm version check won't work either. > > the patch 2 looks correct to me. I couldn't spot any issue with the logic. Thanks for the review. I also don't see an easy way to detect and skip it reliably. I will update the README.rst and also the error message from the xdpwall selftest.