Arnd Bergmann <a...@arndb.de> writes: > On Mon, Dec 23, 2019 at 3:31 PM Christophe Leroy > <christophe.le...@c-s.fr> wrote: >> >> do_hres() is called from several places, so GCC doesn't inline >> it at first. >> >> do_hres() takes a struct __kernel_timespec * parameter for >> passing the result. In the 32 bits case, this parameter corresponds >> to a local var in the caller. In order to provide a pointer >> to this structure, the caller has to put it in its stack and >> do_hres() has to write the result in the stack. This is suboptimal, >> especially on RISC processor like powerpc. >> >> By making GCC inline the function, the struct __kernel_timespec >> remains a local var using registers, avoiding the need to write and >> read stack. >> >> The improvement is significant on powerpc. >> >> Signed-off-by: Christophe Leroy <christophe.le...@c-s.fr> > > Good idea, I can see how this ends up being an improvement > for most of the callers. > > Acked-by: Arnd Bergmann <a...@arndb.de>
https://lore.kernel.org/r/20191112012724.250792-3-d...@arista.com On the way to be applied. Thanks, tglx