eBPF on powerpc
Naveen N. Rao
naveen.n.rao at linux.vnet.ibm.com
Wed Nov 25 06:51:14 AEDT 2020
Christophe Leroy wrote:
>
>
> Le 24/11/2020 à 17:35, Naveen N. Rao a écrit :
>> Hi Christophe,
>>
>> Christophe Leroy wrote:
>>> Hi Naveen,
>>>
>>> Few years ago, you implemented eBPF on PPC64.
>>>
>>> Is there any reason for implementing it for PPC64 only ?
>>
>> I focused on ppc64 since eBPF is a 64-bit VM and it was more straight-forward to target.
>>
>>> Is there something that makes it impossible to have eBPF for PPC32 as well ?
>>
>> No, I just wasn't sure if it would be performant enough to warrant it. Since then however, there
>> have been arm32 and riscv 32-bit JIT implementations and atleast the arm32 JIT seems to be showing
>> ~50% better performance compared to the interpreter (*). So, it would be worthwhile to add support
>> for ppc32.
>
> That's great.
>
> I know close to nothing about eBPF. Is there any interesting documentation on it somewhere that
> would allow me to easily understand how it works and allow me to extend the 64 bit powerpc to 32 bits ?
I don't think there was ever a formal spec written for the eBPF VM. Here
are a few resources which should help, alongside the existing JIT
implementations:
- BPF Kernel Internals:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/networking/filter.rst#n604
- https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/bpf
- BPF and XDP Reference Guide: https://docs.cilium.io/en/stable/bpf/
- Naveen
More information about the Linuxppc-dev
mailing list