[PATCH bpf-next v3 0/4] Mixing bpf2bpf and tailcalls for RV64

Björn Töpel bjorn at kernel.org
Thu Feb 1 09:30:35 PST 2024


Alexei Starovoitov <alexei.starovoitov at gmail.com> writes:

> On Thu, Feb 1, 2024 at 2:56 AM Daniel Borkmann <daniel at iogearbox.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/

Got it. ...and it's broken on arm64 as well?



More information about the linux-riscv mailing list