[PATCH v2] powerpc/64s: introduce CONFIG_MAXSMP to test very large SMP

Nicholas Piggin npiggin at gmail.com
Tue Nov 23 16:14:48 AEDT 2021


Excerpts from Michael Ellerman's message of November 23, 2021 11:01 am:
> Michael Ellerman <mpe at ellerman.id.au> writes:
>> Christophe Leroy <christophe.leroy at csgroup.eu> writes:
>>> Le 09/11/2021 à 07:51, Nicholas Piggin a écrit :
>> ...
>>>> diff --git a/arch/powerpc/platforms/Kconfig.cputype b/arch/powerpc/platforms/Kconfig.cputype
>>>> index a208997ade88..14c275e0ff93 100644
>>>> --- a/arch/powerpc/platforms/Kconfig.cputype
>>>> +++ b/arch/powerpc/platforms/Kconfig.cputype
>>>> @@ -475,9 +475,14 @@ config SMP
>>>>   
>>>>   	  If you don't know what to do here, say N.
>>>>   
>>>> +# MAXSMP sets 8192 if COMPILE_TEST because that's what x86 has flushed out.
>>>> +# Exceeding that will cause a lot of compile errors. Have to deal with those
>>>> +# first.
>>>>   config NR_CPUS
>>>> -	int "Maximum number of CPUs (2-8192)" if SMP
>>>> -	range 2 8192 if SMP
>>>> +	int "Maximum number of CPUs (2-8192)" if SMP && !MAXSMP
>>>> +	range 2 16384 if SMP
>>>> +	default 16384 if MAXSMP && !COMPILE_TEST
>>>> +	default 8192 if MAXSMP && COMPILE_TEST
>>>
>>> You can do less complex. First hit becomes the default, so you can do:
>>>
>>> 	default 8192 if MAXSMP && COMPILE_TEST
>>> 	default 16384 if MAXSMP
>>
>> I did that when applying.
> 
> But I'll have to drop it, it breaks the allyesconfig build:

Ah, you still need patch 1/2 sorry I confused things by only re-sending 
this one.

https://patchwork.ozlabs.org/project/linuxppc-dev/patch/20211105035042.1398309-1-npiggin@gmail.com/

Thanks,
Nick

> 
>   In file included from /home/michael/linux/arch/powerpc/include/asm/paravirt.h:15,
>                    from /home/michael/linux/arch/powerpc/include/asm/qspinlock.h:6,
>                    from /home/michael/linux/arch/powerpc/include/asm/spinlock.h:7,
>                    from /home/michael/linux/include/linux/spinlock.h:93,
>                    from /home/michael/linux/include/linux/mmzone.h:8,
>                    from /home/michael/linux/include/linux/gfp.h:6,
>                    from /home/michael/linux/include/linux/mm.h:10,
>                    from /home/michael/linux/arch/powerpc/platforms/powernv/idle.c:9:
>   /home/michael/linux/arch/powerpc/include/asm/cputhreads.h: In function ‘cpu_thread_mask_to_cores.constprop’:
>   /home/michael/linux/arch/powerpc/include/asm/cputhreads.h:61:1: error: the frame size of 2064 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>      61 | }
>         | ^
>   /home/michael/linux/arch/powerpc/platforms/powernv/idle.c: In function ‘store_fastsleep_workaround_applyonce’:
>   /home/michael/linux/arch/powerpc/platforms/powernv/idle.c:220:1: error: the frame size of 2080 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>     220 | }
>         | ^
>   cc1: all warnings being treated as errors
>   make[4]: *** [/home/michael/linux/scripts/Makefile.build:287: arch/powerpc/platforms/powernv/idle.o] Error 1
>   make[4]: *** Waiting for unfinished jobs....
>   make[3]: *** [/home/michael/linux/scripts/Makefile.build:549: arch/powerpc/platforms/powernv] Error 2
>   make[3]: *** Waiting for unfinished jobs....
>   /home/michael/linux/arch/powerpc/kvm/book3s_hv_interrupts.S: Assembler messages:
>   /home/michael/linux/arch/powerpc/kvm/book3s_hv_interrupts.S:66: Error: operand out of range (0x0000000000010440 is not between 0xffffffffffff8000 and 0x0000000000007ffc)
>   make[3]: *** [/home/michael/linux/scripts/Makefile.build:388: arch/powerpc/kvm/book3s_hv_interrupts.o] Error 1
>   make[3]: *** Waiting for unfinished jobs....
>   make[2]: *** [/home/michael/linux/scripts/Makefile.build:549: arch/powerpc/platforms] Error 2
>   make[2]: *** Waiting for unfinished jobs....
>   make[2]: *** [/home/michael/linux/scripts/Makefile.build:549: arch/powerpc/kvm] Error 2
>   make[1]: *** [/home/michael/linux/Makefile:1846: arch/powerpc] Error 2
>   make[1]: *** Waiting for unfinished jobs....
>   make: *** [Makefile:219: __sub-make] Error 2
> 
> cheers
> 


More information about the Linuxppc-dev mailing list