Subject: [PATCHv10 0/3] enable nr_cpus for powerpc without re-ordering cpu number

From: Pingfan Liu <[email-masked]>
Date: Wed, 27 Dec 2023 10:39:31 +0800

From: Pingfan Liu <[email-masked]>

This series addresses the nr_cpus issue for PowerPC without re-ordering
cpu number. To save the memory used by percpu area, it also limits the
possible cpu numbers by allowing hole in cpu_possible_mask.

Because the last cpu number will bigger than nr_cpu_ids in this way,
some pointer arrays indexed by cpu should be extended to hold the
pointer, e.g. paca_ptrs.

Please notice that this series still has some issue (some cpu can not be
brought up), but before I resolve it. Please share your thoughts about
it.

Thanks

Cc: Michael Ellerman <[email-masked]>
Cc: Nicholas Piggin <[email-masked]>
Cc: Christophe Leroy <[email-masked]>
Cc: Mahesh Salgaonkar <[email-masked]>
Cc: Wen Xiong <[email-masked]>
Cc: Baoquan He <[email-masked]>
Cc: Ming Lei <[email-masked]>
Cc: Sourabh Jain <[email-masked]>
Cc: Hari Bathini <[email-masked]>
Cc: [email-masked]
To: [email-masked]

Pingfan Liu (3):
  powerpc/kernel: Remove check on paca_ptrs_size
  powerpc/kernel: Extend arrays' size to make room for a hole in
    cpu_possible_mask
  powerpc/smp: Allow hole in paca_ptrs to accommodate boot_cpu

 arch/powerpc/include/asm/paca.h    |  2 ++
 arch/powerpc/include/asm/smp.h     |  1 +
 arch/powerpc/kernel/paca.c         | 24 +++++++-----------------
 arch/powerpc/kernel/prom.c         |  6 ++++++
 arch/powerpc/kernel/setup-common.c | 26 +++++++++++++++++++++-----
 arch/powerpc/kernel/smp.c          |  3 ++-
 6 files changed, 39 insertions(+), 23 deletions(-)

-- 
2.31.1