Subject: Re: WARNING&Oops in v6.6.37 on ppc64lea - Trying to vfree() bad address (00000000453be747)

From: Michael Ellerman <[email-masked]>
Date: Tue, 09 Jul 2024 22:52:14 +1000

Michael Ellerman <[email-masked]> writes:
> Greg Kroah-Hartman <[email-masked]> writes:
>> On Tue, Jul 09, 2024 at 03:02:13PM +0530, Naveen N Rao wrote:
>>> Greg Kroah-Hartman wrote:
>>> > On Mon, Jul 08, 2024 at 11:16:48PM -0400, matoro wrote:
>>> > > On 2024-07-05 16:34, Vitaly Chikunov wrote:
>>> > > > Hi,
>>> > > > > There is new WARNING and Oops on ppc64le in v6.6.37 when running
>>> > > LTP tests:
>>> > > > bpf_prog01, bpf_prog02, bpf_prog04, bpf_prog05, prctl04. Logs excerpt
>>> > > > below. I
>>> > > > see there is 1 commit in v6.6.36..v6.6.37 with call to
>>> > > > bpf_jit_binary_pack_finalize, backported from 5 patch mainline patchset:
>>> > > > >   f99feda5684a powerpc/bpf: use
>>> > > bpf_jit_binary_pack_[alloc|finalize|free]
>>> > > >
>>> 
>>> <snip>
>>> 
>>> > > > > And so on. Temporary build/test log is at
>>> > > > https://git.altlinux.org/tasks/352218/build/100/ppc64le/log
>>> > > > > Other stable/longterm branches or other architectures does not
>>> > > exhibit this.
>>> > > > > Thanks,
>>> > > 
>>> > > Hi all - this just took down a production server for me, on POWER9 bare
>>> > > metal.  Not running tests, just booting normally, before services even came
>>> > > up.  Had to perform manual restoration, reverting to 6.6.36 worked.  Also
>>> > > running 64k kernel, unsure if it's better on 4k kernel.
>>> > > 
>>> > > In case it's helpful, here's the log from my boot:
>>> > > https://dpaste.org/Gyxxg/raw
>>> > 
>>> > Ok, this isn't good, something went wrong with my backports here.  Let
>>> > me go revert them all and push out a new 6.6.y release right away.
>>> 
>>> I think the problem is that the series adding support for bpf prog_pack was
>>> partially backported. In particular, the below patches are missing from
>>> stable v6.6:
>>> 465cabc97b42 powerpc/code-patching: introduce patch_instructions()
>>> 033ffaf0af1f powerpc/bpf: implement bpf_arch_text_invalidate for bpf_prog_pack
>>> 6efc1675acb8 powerpc/bpf: implement bpf_arch_text_copy
>>> 
>>> It should be sufficient to revert commit f99feda5684a (powerpc/bpf: use
>>> bpf_jit_binary_pack_[alloc|finalize|free]) to allow the above to apply
>>> cleanly, followed by cherry picking commit 90d862f370b6 (powerpc/bpf: use
>>> bpf_jit_binary_pack_[alloc|finalize|free]) from upstream.
>>> 
>>> Alternately, commit f99feda5684a (powerpc/bpf: use
>>> bpf_jit_binary_pack_[alloc|finalize|free]) can be reverted.
>>
>> I'm dropping them all now, if you want to submit a working series for
>> this, I'll be glad to queue them all up.
>
> Thanks, revert is good for now.
>
> With the revert there will be a build warning/error, only in stable,
> which I think can be fixed with the diff below.

Oh I see you also reverted the commit that introduces that warning, so
the build should be OK now.

cheers