Re: [PATCH v1 0/4] Kill the time spent in patch_instruction()

From: Christophe Leroy
Date: Fri Jun 24 2022 - 03:06:51 EST


Michael ?

Le 31/05/2022 à 08:24, Christophe Leroy a écrit :


Le 17/05/2022 à 14:37, Michael Ellerman a écrit :
Christophe Leroy <christophe.leroy@xxxxxxxxxx> writes:
Le 15/05/2022 à 12:28, Michael Ellerman a écrit :
On Tue, 22 Mar 2022 16:40:17 +0100, Christophe Leroy wrote:
This series reduces by 70% the time required to activate
ftrace on an 8xx with CONFIG_STRICT_KERNEL_RWX.

Measure is performed in function ftrace_replace_code() using mftb()
around the loop.

With the series,
- Without CONFIG_STRICT_KERNEL_RWX, 416000 TB ticks are measured.
- With CONFIG_STRICT_KERNEL_RWX, 546000 TB ticks are measured.

[...]

Patches 1, 3 and 4 applied to powerpc/next.

[1/4] powerpc/code-patching: Don't call is_vmalloc_or_module_addr() without CONFIG_MODULES
https://git.kernel.org/powerpc/c/cb3ac45214c03852430979a43180371a44b74596
[3/4] powerpc/code-patching: Use jump_label for testing freed initmem
https://git.kernel.org/powerpc/c/b033767848c4115e486b1a51946de3bee2ac0fa6
[4/4] powerpc/code-patching: Use jump_label to check if poking_init() is done
https://git.kernel.org/powerpc/c/1751289268ef959db68b0b6f798d904d6403309a


Patch 2 was the keystone of this series. What happened to it ?

It broke on 64-bit. I think I know why but I haven't had time to test
it. Will try and get it fixed in the next day or two.


You didn't find any solution at the end, or didn't have time ?

What was the problem exactly ? I made a quick try on QEMU and it was working as expected.


Should I make it a ppc32-only change ?