[FSL P50x0] lscpu reports wrong values since the RC1 of kernel 5.13

Christian Zigotzky chzigotzky at xenosoft.de
Mon Aug 16 22:29:21 AEST 2021


Hi All,

I tested the RC6 of kernel 5.14 today and unfortunately the issue still 
exists. We have figured out that only P5040 SoCs are affected. [1]
P5020 SoCs display the correct values.
Please check the CPU changes in the PowerPC updates 5.13-1 and 5.13-2.

Thanks,
Christian

[1] https://forum.hyperion-entertainment.com/viewtopic.php?p=53775#p53775


On 09 August 2021 um 02:37 pm, Christian Zigotzky wrote:
> Hi All,
>
> Lscpu reports wrong values [1] since the RC1 of kernel 5.13 on my FSL 
> P5040 Cyrus+ board (A-EON AmigaOne X5000). [2]
> The differences are:
>
> Since the RC1 of kernel 5.13 (wrong values):
>
> Core(s) per socket: 1
> Socket(s): 3
>
> Before (correct values):
>
> Core(s) per socket: 4
> Socket(s): 1
>
> Through the wrong values, I can't use "-smp 4" with a virtual e5500 
> QEMU machine with KVM HV anymore.  [3]
> "-smp 3" works with KVM HV.
>
> Maybe the file_load_64 commit from the PowerPC updates 5.13-2 is the 
> problem ( powerpc/kexec_file: Use current CPU info while setting up 
> FDT). [4]
>
> Or maybe this change (PowerPC updates 5.13-1):
>
> -#ifdef CONFIG_PPC_BOOK3E_64
> -    state->ctx_state = exception_enter();
> -    if (user_mode(regs))
> -        account_cpu_user_entry();
> -#endif
>
> ---
>
> Or maybe this change (PowerPC updates 5.13-1):
>
> diff --git a/arch/powerpc/include/asm/smp.h 
> b/arch/powerpc/include/asm/smp.h
> index 7a13bc20f0a0c..03b3d010cbab6 100644
> --- a/arch/powerpc/include/asm/smp.h
> +++ b/arch/powerpc/include/asm/smp.h
> @@ -31,6 +31,7 @@ extern u32 *cpu_to_phys_id;
>  extern bool coregroup_enabled;
>
>  extern int cpu_to_chip_id(int cpu);
> +extern int *chip_id_lookup_table;
>
>  #ifdef CONFIG_SMP
>
> @@ -121,6 +122,11 @@ static inline struct cpumask 
> *cpu_sibling_mask(int cpu)
>      return per_cpu(cpu_sibling_map, cpu);
>  }
>
> +static inline struct cpumask *cpu_core_mask(int cpu)
> +{
> +    return per_cpu(cpu_core_map, cpu);
> +}
> +
>  static inline struct cpumask *cpu_l2_cache_mask(int cpu)
>  {
>      return per_cpu(cpu_l2_cache_map, cpu);
>
> ---
>
> I have found a lot of other changes in the PowerPC updates 5.13-1 
> regarding the CPU.
>
> Could you please check the CPU changes in the PowerPC updates 5.13-1 
> and 5.13-2?
>
> Please find attached the kernel 5.14-rc5 config.
>
> Thanks,
> Christian
>
>
> [1]
>
> lscpu with the correct values before the RC1 of kernel 5.13:
>
> Architecture: ppc64
> CPU op-mode(s): 32-bit, 64-bit
> Byte Order: Big Endian
> CPU(s): 4
> On-line CPU(s) list: 0-3
> Thread(s) per core: 1
> Core(s) per socket: 4
> Socket(s): 1
> Model: 1.2 (pvr 8024 0012)
> Model name: e5500
> L1d cache: 128 KiB
> L1i cache: 128 KiB
> L2 cache: 2 MiB
> L3 cache: 2 MiB
> Vulnerability Itlb multihit: Not affected
> Vulnerability L1tf: Not affected
> Vulnerability Mds: Not affected
> Vulnerability Meltdown: Not affected
> Vulnerability Spec store bypass: Not affected
> Vulnerability Spectre v1: Mitigation; __user pointer sanitization
> Vulnerability Spectre v2: Mitigation; Branch predictor state flush
> Vulnerability Srbds: Not affected
> Vulnerability Tsx async abort: Not affected
>
> ---
>
> lscpu with the wrong values since the RC1 of kernel 5.13:
>
> Architecture: ppc64
> CPU op-mode(s): 32-bit, 64-bit
> Byte Order: Big Endian
> CPU(s): 4
> On-line CPU(s) list: 0-3
> Thread(s) per core: 1
> Core(s) per socket: 1
> Socket(s): 3
> Model: 1.2 (pvr 8024 0012)
> Model name: e5500
> L1d cache: 128 KiB
> L1i cache: 128 KiB
> L2 cache: 2 MiB
> L3 cache: 2 MiB
> Vulnerability Itlb multihit: Not affected
> Vulnerability L1tf: Not affected
> Vulnerability Mds: Not affected
> Vulnerability Meltdown: Not affected
> Vulnerability Spec store bypass: Not affected
> Vulnerability Spectre v1: Mitigation; __user pointer sanitization
> Vulnerability Spectre v2: Mitigation; Branch predictor state flush
> Vulnerability Srbds: Not affected
> Vulnerability Tsx async abort: Not affected
>
> ---
>
> [2] http://wiki.amiga.org/index.php?title=X5000
>
> [3] https://lists.ozlabs.org/pipermail/linuxppc-dev/2021-May/229103.html
>
> [4] 
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/diff/arch/powerpc/kexec/file_load_64.c?id=ab159ac569fddf812c0a217d6dbffaa5d93ef88f



More information about the Linuxppc-dev mailing list