]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
powerpc/pseries/lparcfg: Use num_possible_cpus() for potential processors
authorThomas Weißschuh <thomas.weissschuh@linutronix.de>
Thu, 10 Oct 2024 07:01:26 +0000 (09:01 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Sat, 2 Nov 2024 11:37:35 +0000 (12:37 +0100)
The systemcfg processorCount variable tracks currently online variables,
not possible ones, so the stored value is wrong.
The code preferably tries to use the ibm,lrdr-capacity field 4 which
"represents the maximum number of processors that the guest can have."
Switch from processorCount to the better matching num_possible_cpus().

Signed-off-by: Thomas Weißschuh <thomas.weissschuh@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lore.kernel.org/all/20241010-vdso-generic-base-v1-24-b64f0842d512@linutronix.de
arch/powerpc/platforms/pseries/lparcfg.c

index acc640fccca17b54c42eca1a242b37ad4299f685..cc22924f159f50416130f2dcd8f9d0ba0dc0973f 100644 (file)
@@ -29,7 +29,6 @@
 #include <asm/firmware.h>
 #include <asm/rtas.h>
 #include <asm/time.h>
-#include <asm/vdso_datapage.h>
 #include <asm/vio.h>
 #include <asm/mmu.h>
 #include <asm/machdep.h>
@@ -530,7 +529,7 @@ static int pseries_lparcfg_data(struct seq_file *m, void *v)
                lrdrp = of_get_property(rtas_node, "ibm,lrdr-capacity", NULL);
 
        if (lrdrp == NULL) {
-               partition_potential_processors = vdso_data->processorCount;
+               partition_potential_processors = num_possible_cpus();
        } else {
                partition_potential_processors = be32_to_cpup(lrdrp + 4);
        }