Re: [PATCH] MIPS: generic: enable SMP on SMVP systems

From: Jiaxun Yang
Date: Fri Dec 17 2021 - 17:12:28 EST




在 2021/12/17 18:39, Sander Vanheule 写道:
In addition to CPS SMP setups, also try to initialise MT SMP setups with
multiple VPEs per CPU core. CMP SMP support is not provided as it is
considered deprecated.

Additionally, rework the code by dropping the err variable and make it
similar to how other platforms perform this initialisation.
Hi,

Thanks for your patch :-)

However there is a probem that register_vsmp_smp_ops never returns error
if CONFIG_MIPS_MT_SMP is enabled. But generic kernel is supposed to
run on systems with & without MT.

So probably you need:

diff --git a/arch/mips/include/asm/smp-ops.h b/arch/mips/include/asm/smp-ops.h
index 65618ff1280c..864aea803984 100644
--- a/arch/mips/include/asm/smp-ops.h
+++ b/arch/mips/include/asm/smp-ops.h
@@ -101,6 +101,9 @@ static inline int register_vsmp_smp_ops(void)
 #ifdef CONFIG_MIPS_MT_SMP
        extern const struct plat_smp_ops vsmp_smp_ops;

+       if (!cpu_has_mipsmt)
+               return -ENODEV;
+
        register_smp_ops(&vsmp_smp_ops);

        return 0;

Thanks.

- Jiaxun