Re: [PATCHv2 0/7] eBPF JIT for PPC64
From: Naveen N. Rao <hidden>
Date: 2016-06-30 10:33:49
Also in:
lkml
On 2016/06/30 12:34PM, Denis Kirjanov wrote:
On 6/30/16, Andreas Ziegler [off-list ref] wrote:quoted
Hi Naveen, this patchset makes a change to arch/powerpc/net/Makefile in order to only compile the previously existing bpf_jit_comp.c if !CONFIG_PPC64, and use bpf_jit_comp64.c if CONFIG_PPC64 is enabled. Inside arch/powerpc/net/bpf_jit_comp.c, however, there is still an #ifdef CONFIG_PPC64 block at line 667 (linux-next of today, i.e., next-20160630): #ifdef CONFIG_PPC64 /* Function descriptor nastiness: Address + TOC */ ((u64 *)image)[0] = (u64)code_base; ((u64 *)image)[1] = local_paca->kernel_toc; #endif From my understanding of the code, this #ifdef can now be removed, as there is no way the file could be compiled with CONFIG_PPC64 enabled. Is this correct?That was used for running classic BPF on ppc64. With eBPF on ppc64 the whole block can be removed.
Yes, that can be removed and so can the many 64-bit related macros in bpf_jit32.h. The reason I didn't remove those just yet was so that we could easily try out the classic BPF JIT for ppc64 BE, for testing/performance comparison and so on. I think it would be good to retain this for one kernel release. - Naveen