On 18/10/23 1:51 pm, Pingfan Liu wrote:
On Tue, Oct 17, 2023 at 6:39 PM Hari Bathini <hbath...@linux.ibm.com> wrote:



On 17/10/23 7:58 am, Pingfan Liu wrote:
*** Idea ***
For kexec -p, the boot cpu can be not the cpu0, this causes the problem
of allocating memory for paca_ptrs[]. However, in theory, there is no
requirement to assign cpu's logical id as its present sequence in the
device tree. But there is something like cpu_first_thread_sibling(),
which makes assumption on the mapping inside a core. Hence partially
loosening the mapping, i.e. unbind the mapping of core while keep the
mapping inside a core.

*** Implement ***
At this early stage, there are plenty of memory to utilize. Hence, this
patch allocates interim memory to link the cpu info on a list, then
reorder cpus by changing the list head. As a result, there is a rotate
shift between the sequence number in dt and the cpu logical number.

*** Result ***
After this patch, a boot-cpu's logical id will always be mapped into the
range [0,threads_per_core).

Besides this, at this phase, all threads in the boot core are forced to
be onlined. This restriction will be lifted in a later patch with
extra effort.

Signed-off-by: Pingfan Liu <pi...@redhat.com>
Cc: Michael Ellerman <m...@ellerman.id.au>
Cc: Nicholas Piggin <npig...@gmail.com>
Cc: Christophe Leroy <christophe.le...@csgroup.eu>
Cc: Mahesh Salgaonkar <mah...@linux.ibm.com>
Cc: Wen Xiong <wenxi...@us.ibm.com>
Cc: Baoquan He <b...@redhat.com>
Cc: Ming Lei <ming....@redhat.com>
Cc: Sourabh Jain <sourabhj...@linux.ibm.com>
Cc: Hari Bathini <hbath...@linux.ibm.com>
Cc: ke...@lists.infradead.org
To: linuxppc-dev@lists.ozlabs.org

Thanks for working on this, Pingfan.
Looks good to me.

Acked-by: Hari Bathini <hbath...@linux.ibm.com>


Thank you for kindly reviewing. I hope that after all these years, we
have accomplished the objective.


I hope so too.
Thanks!

Reply via email to