[PATCH 2/3] powerpc: support dynamic preemption

Shrikanth Hegde sshegde at linux.ibm.com
Mon Dec 2 06:45:41 AEDT 2024



On 11/27/24 12:14, Christophe Leroy wrote:
> 
> 
> Le 25/11/2024 à 05:22, Shrikanth Hegde a écrit :
>> Once the lazy preemption is supported, it would be desirable to change
>> the preemption models at runtime. So this change adds support for dynamic
>> preemption using DYNAMIC_KEY.
>>
>> In irq-exit to kernel path, use preempt_model_preemptible for decision.
>> Other way would be using static key based decision. Keeping it
>> simpler since key based change didn't show performance improvement.
> 
> What about static_call, wouldn't it improve performance ?
> 
>>
>> diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
>> index 6d6bbd93abab..01c58f5258c9 100644
>> --- a/arch/powerpc/Kconfig
>> +++ b/arch/powerpc/Kconfig
>> @@ -270,6 +270,7 @@ config PPC
>>       select HAVE_PERF_EVENTS_NMI        if PPC64
>>       select HAVE_PERF_REGS
>>       select HAVE_PERF_USER_STACK_DUMP
>> +    select HAVE_PREEMPT_DYNAMIC_KEY
> 
> Can you use HAVE_PREEPT_DYNAMIC_CALL instead ? That should be more 
> performant.
> 
> I know static calls are not in for PPC64 yet, you can restart from 
> http://patchwork.ozlabs.org/project/linuxppc-dev/ 
> cover/20221010002957.128276-1-bgray at linux.ibm.com/ and https:// 
> github.com/linuxppc/issues/issues/416
> 

Thanks Christophe, I will take a look and understand.

May be stupid question, do the concerns of arm still valid for ppc64/ppc32 out-line static calls?
https://lore.kernel.org/all/20220214165216.2231574-6-mark.rutland@arm.com/

As I understood, that is the reason they went ahead with DYNAMIC_KEY.

> Christophe



More information about the Linuxppc-dev mailing list