lzc1001 opened a new issue, #14257: URL: https://github.com/apache/nuttx/issues/14257
### Description Hi everyone! I want to boot multi-core on FVP A510. After cpu1 run to WFI instruction, cpu0 run to "while (up_testset(lock) == SP_LOCKED)" loop. This flow is: sched_unlock() (in nx_start()) -> nxsched_merge_pending() -> nxsched_add_readytorun() -> "DEBUGVERIFY(up_cpu_pause(cpu));" -> "spin_lock(&g_cpu_paused[cpu]);" -> spin_lock() -> "while (up_testset(lock) == SP_LOCKED)" in spin_lock(), then the code is still run in this loop. the input parameter "cpu" of up_cpu_pause() is 1 because of the task in “btcb” belong to cpu1 but the code run on cpu0 currently, and the cpu1 is in idle loop. So, it seem that cpu0 is waiting cpu1 to end its task but cpu1 task is still running. I don't know how to solve this issue and I don't konw the task scheduler how to work correctly in this case Thank you very much!      ### Verification - [X] I have verified before submitting the report. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
