Re: [PATCH v3 3/3] s390x: optimization of the check for CPU topology change

Pierre Morel
2021-08-03T08:57:24Z

On 8/3/21 10:42 AM, Heiko Carstens wrote:
> On Tue, Aug 03, 2021 at 10:26:46AM +0200, Pierre Morel wrote:
>> Now that the PTF instruction is interpreted by the SIE we can optimize
>> the arch_update_cpu_topology callback to check if there is a real need
>> to update the topology by using the PTF instruction.
>>
>> Signed-off-by: Pierre Morel <pmorel@linux.ibm.com>
>> ---
>> arch/s390/kernel/topology.c | 3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/arch/s390/kernel/topology.c b/arch/s390/kernel/topology.c
>> index 26aa2614ee35..741cb447e78e 100644
>> --- a/arch/s390/kernel/topology.c
>> +++ b/arch/s390/kernel/topology.c
>> @@ -322,6 +322,9 @@ int arch_update_cpu_topology(void)
>> struct device *dev;
>> int cpu, rc;
>>
>> + if (!ptf(PTF_CHECK))
>> + return 0;
>> +
>
> We have a timer which checks if topology changed and then triggers a
> call to arch_update_cpu_topology() via rebuild_sched_domains().
> With this change topology changes would get lost.

For my understanding, if PTF check return 0 it means that there are no
topology changes.
So they could not get lost.

What did I miss?

--
Pierre Morel
IBM Lab Boeblingen