Ouss4 edited a comment on pull request #4403:
URL: https://github.com/apache/incubator-nuttx/pull/4403#issuecomment-905019719


   @xiaoxiang781216 @masayuki2009 please look at: 
https://github.com/Ouss4/incubator-nuttx/commit/8b8975ea9caaa6538717044ba1b3d977955498f0
 if I'm reading the code correctly, there is an `#else` missing there for the 
case where serial interrupts are suppressed.  If that's the case, we have a few 
other drivers to fix as well.
   
   Without that `#else`, `esp32_txint` would be called recursively from the 
same CPU with the spin-lock locked which leads to deadlocks.  @masayuki2009 did 
you face such deadlocks when you did 
https://github.com/apache/incubator-nuttx/pull/2830?  I see `cxd56_serial.c` 
still uses `enter_critical_setction` in `up_txint`.  `enter_critical_section` 
would not lead to deadlocks since the subsequent calls just increment the count 
and don't try to acquire the spinlock.


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


Reply via email to