On Wed, Dec 20, 2023 at 10:26:21PM +0530, Hari Bathini wrote: > Currently, bpf jit code on powerpc assumes all the bpf functions and > helpers to be kernel text. This is false for kfunc case, as function > addresses are mostly module addresses in that case. Ensure module > addresses are supported to enable kfunc support. > > This effectively reverts commit feb6307289d8 ("powerpc64/bpf: Optimize > instruction sequence used for function calls") and commit 43d636f8b4fd > ("powerpc64/bpf elfv1: Do not load TOC before calling functions") that > assumed only kernel text for bpf functions/helpers. > > Also, commit b10cb163c4b3 ("powerpc64/bpf elfv2: Setup kernel TOC in > r2 on entry") that paved the way for the commits mentioned above is > reverted. Instead of that, can we detect kfunc and use separate set of instructions just for those? Unless unavoidable, I would prefer to retain the existing optimal sequence using TOC for calls to bpf kernel helpers, since those are a lot more common than kfunc. - Naveen