[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAADnVQ+rLneO4t=YYmLYtc945Fz0=ucNTWZBxgvs8toFY-onRg@mail.gmail.com>
Date: Thu, 1 Feb 2024 08:19:47 -0800
From: Alexei Starovoitov <alexei.starovoitov@...il.com>
To: Daniel Borkmann <daniel@...earbox.net>
Cc: Pu Lehui <pulehui@...weicloud.com>, bpf <bpf@...r.kernel.org>,
linux-riscv <linux-riscv@...ts.infradead.org>,
Network Development <netdev@...r.kernel.org>, Björn Töpel <bjorn@...nel.org>,
Alexei Starovoitov <ast@...nel.org>, Andrii Nakryiko <andrii@...nel.org>,
Martin KaFai Lau <martin.lau@...ux.dev>, Eduard Zingerman <eddyz87@...il.com>, Song Liu <song@...nel.org>,
Yonghong Song <yhs@...com>, John Fastabend <john.fastabend@...il.com>, KP Singh <kpsingh@...nel.org>,
Stanislav Fomichev <sdf@...gle.com>, Hao Luo <haoluo@...gle.com>, Jiri Olsa <jolsa@...nel.org>,
Palmer Dabbelt <palmer@...belt.com>, Luke Nelson <luke.r.nels@...il.com>,
Pu Lehui <pulehui@...wei.com>, Leon Hwang <hffilwlqm@...il.com>
Subject: Re: [PATCH bpf-next v3 0/4] Mixing bpf2bpf and tailcalls for RV64
On Thu, Feb 1, 2024 at 2:56 AM Daniel Borkmann <daniel@...earbox.net> wrote:
>
> > will be destroyed. So we implemented mixing bpf2bpf and tailcalls
> > similar to x86_64, i.e. using a non-callee saved register to transfer
...
> Iiuc, this still needs a respin as per the ongoing discussions. Also,
> if you have worked on BPF selftests which exercise the corner case
> around a6, please include them in the series as well for coverage.
Hold on, folks.
I'm not sure it's such a code idea to support tailcalls from subprogs
in risc-v.
They're broken on x86-64 and so far several attempts to fix them
were not successful.
If we don't have a fix soon we will disable this feature completely
in the verifier.
In general tailcalling from subprogs is a niche use case.
If there are users they should transition to tail call from main prog only.
See
https://lore.kernel.org/bpf/CAADnVQJ1szry9P00wweVDu4d0AQoM_49qT-_ueirvggAiCZrpw@mail.gmail.com/
Powered by blists - more mailing lists