[PATCH v2] powerpc/bpf: populate extable entries only during the last pass
Naveen N. Rao
naveen.n.rao at linux.ibm.com
Wed Apr 26 00:36:09 AEST 2023
Hari Bathini wrote:
> Since commit 85e031154c7c ("powerpc/bpf: Perform complete extra passes
> to update addresses"), two additional passes are performed to avoid
> space and CPU time wastage on powerpc. But these extra passes led to
> WARN_ON_ONCE() hits in bpf_add_extable_entry() as extable entries are
> populated again, during the extra pass, without resetting the index.
> Fix it by resetting entry index before repopulating extable entries,
> if and when there is an additional pass.
>
> Fixes: 85e031154c7c ("powerpc/bpf: Perform complete extra passes to update addresses")
> Cc: stable at vger.kernel.org
> Signed-off-by: Hari Bathini <hbathini at linux.ibm.com>
> ---
> arch/powerpc/net/bpf_jit_comp.c | 2 ++
> 1 file changed, 2 insertions(+)
Reviewed-by: Naveen N. Rao <naveen.n.rao at linux.vnet.ibm.com>
- Naveen
>
> diff --git a/arch/powerpc/net/bpf_jit_comp.c b/arch/powerpc/net/bpf_jit_comp.c
> index e93aefcfb83f..37043dfc1add 100644
> --- a/arch/powerpc/net/bpf_jit_comp.c
> +++ b/arch/powerpc/net/bpf_jit_comp.c
> @@ -101,6 +101,8 @@ struct bpf_prog *bpf_int_jit_compile(struct bpf_prog *fp)
> bpf_hdr = jit_data->header;
> proglen = jit_data->proglen;
> extra_pass = true;
> + /* During extra pass, ensure index is reset before repopulating extable entries */
> + cgctx.exentry_idx = 0;
> goto skip_init_ctx;
> }
>
> --
> 2.40.0
>
>
More information about the Linuxppc-dev
mailing list