wilbur.chan wrote:
Hi Sebastian,
Hi Wilbur,
Recently I've implemented non-SMP kexec on MPC8572 and P2020ds(2G ram). I modified your misc_32.S that , I setuped two '1G' entries after the "rfi" instruction, so that I did not need to setup mapping for instruction address.
If you send some patches I could add them to my tree so we have everything together.
As for SMP supporting,I tried to close one of the CPUs in default_machine_kexec, and found that , when cpu1 closed ,and if the second kernel is NON- SMP,everything went well.so I added some code in kexec-tools, to make sure the 'kexec' process was running on CPU 0.
I remember that ppc64 had some code to suspend and start the second CPU in the purgatory code. Not sure if there is a generic way for this on ppc32 or it is a book-e thing. Haven't look at it (yet).
So, there left one problem, I can not start the second SMP-kernel, even if I closed CPU1. Any suggestions?
The interesting thing is where do you hang/crash. It could be possible that the kernel is waiting for the non-boot cpus to show up and it doesn't. Have you look how u-boot prepares the cpus and how kernel disables them on shutdown?
PTW: no-smp ---> no-smp.........OK no-smp --->smp...............OK
Does this mean your smp kernel has more that one CPU or just one?
smp(with cpu1 closed)---->no-smp..............OK smpw(with cpu1 closed)---->smp ................FAILED regards, wilbur
Sebastian _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev