jerpelea opened a new pull request, #20248:
URL: https://github.com/apache/nuttx/pull/20248

   ## Summary
   
   Set both stdin (fd 0) and stdout (fd 1) to nonblocking via ioctl(FIONBIO) in 
host_uart_start().
   When the sim is connected via pipe (e.g. by an automation tool) and the host 
side does not read stdout in time, the pipe buffer fills up and write(1, ...) 
blocks the entire sim process. This happens inside host_uninterruptible (irq 
disabled), so the NuttX scheduler is completely frozen and all threads stop.
   With nonblocking I/O, write() returns EAGAIN instead; the TX data stays in 
the NuttX xmit buffer and sim_tty_work retries every 1ms until the pipe has 
space.
   
   ## Impact
   
   RELEASE
   
   ## Testing
   
   CI


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