You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by GitBox <gi...@apache.org> on 2020/11/20 05:42:37 UTC

[GitHub] [incubator-nuttx] masayuki2009 opened a new pull request #2348: Fix pause handler for SMP

masayuki2009 opened a new pull request #2348:
URL: https://github.com/apache/incubator-nuttx/pull/2348


   ## Summary
   
   - This PR consists of 6commits
   - commit 1: arch: cxd56xx: Fix the pause handler for SMP
     - I noticed that sched_add_readytorun() runs on multiple CPUs simultaneously
     - Finally, I found the root cause which was described in TODO
     - Actually, the task newly scheduled on remote CPU did not acquire g_cpu_irqlock
     - This commit fixes this issue by adding a critical section to the pause handler
     - Which will acquire g_cpu_irqlock on the remote CPU explicitly
   - commit 2: arch: armv7-a: Fix the pause handler for SMP
     - Apply the same logic added to cxd56_cpupause.c
   - commit 3: arch: lc823450: Fix the pause handler for SMP
     - Apply the same logic added to cxd56_cpupause.c
   - commit 4: arch: k210: Fix the pause handler for SMP
     - Apply the same logic added to cxd56_cpupause.c
   - commit 5: arch: xtensa: Fix the pause handler for SMP
     - Apply the same logic added to cxd56_cpupause.c
   - commit 6: Update TODO regarding SMP
     - 'POSSIBLE FOR TWO CPUs TO HOLD A CRITICAL SECTION' was resolved
   
   ## Impact
   
   - SMP only
   
   ## Testing
   
   - Tested with spresense:wifi_smp (NCPUS=2 and 4)
    - Run smp, ostest, nxplayer
   - Tested with sabre-6quad:smp (QEMU and dev board)
    - Run smp and ostest
   - Tested with lc823450-xgevk:rndis
    - Run smp and ostest
   - Tested with maix-bit:smp (QEMU)
    - Run smp and ostest
   - Tested with esp32-core:smp (QEMU)
    - Run smp and ostest
   


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] xiaoxiang781216 merged pull request #2348: Fix pause handler for SMP

Posted by GitBox <gi...@apache.org>.
xiaoxiang781216 merged pull request #2348:
URL: https://github.com/apache/incubator-nuttx/pull/2348


   


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] masayuki2009 commented on pull request #2348: Fix pause handler for SMP

Posted by GitBox <gi...@apache.org>.
masayuki2009 commented on pull request #2348:
URL: https://github.com/apache/incubator-nuttx/pull/2348#issuecomment-730866502


   Please note that the fix was not applied to the NuttX simulator because it did not work.
   I suspect SMP implementation for the NuttX simulator has another issue.
   


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org



[GitHub] [incubator-nuttx] masayuki2009 commented on pull request #2348: Fix pause handler for SMP

Posted by GitBox <gi...@apache.org>.
masayuki2009 commented on pull request #2348:
URL: https://github.com/apache/incubator-nuttx/pull/2348#issuecomment-731067523


   @btashton 
   I added the backport/10.0.0 label to this PR.
   


----------------------------------------------------------------
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.

For queries about this service, please contact Infrastructure at:
users@infra.apache.org