cederom commented on PR #17352:
URL: https://github.com/apache/nuttx/pull/17352#issuecomment-3560925807

   Thanks @wangchdo I did take a look at the changes, my questions below :-)
   
   >When signals are disabled, the related POSIX APIs—including sleep, usleep, 
kill, pkill, and pthread—will be disabled as well.
   
   * Are you sure these are the only impacted places? Drivers / irq / read / 
write / etc is not impacted?
   * Are you sure that this change will not leave user in almost bare-metal 
state?
   * For now I can see that in Kconfig signals can be disabled. I cannot see 
dependency in sleep/usleep/kill/pkill/pthread/etc on signals in Kconfig.
   * So the program will crash when for instance usleep is called but signals 
are disabled, or wont build, right?
   * We need to sort the dependencies out before merge and/or we need to 
clearly know what other functionalities are impacted. 
   * Disabling signals in Kconfig should also disable impacted functionalities 
automatically I see that as most user friendly and safe approach.
   
   > ostest is heavily dependent on POSIX APIs—including sleep, usleep, kill, 
pkill, and pthread. Therefore, to disable signal support, ostest must also be 
disabled until it is refactored to reduce its reliance on these APIs.
   
   * How much work is needed to update ostest to work without signals and other 
impacted functionalitites?
   * This is our main tool of runtime confirmation that all works as expected.
   * Having working ostest without signals would reveal potential problems in 
other areas than need an update.
   * Would it be possible to update ostest before this PR is merged?
   
   > Disabling the signal mechanism significantly reduces system footprint and 
complexity. It can also improve real-time performance during thread creation 
and context switching.
   
   * Would it be possible to provide measured Flash/Ram usage with and without 
signals disabled?
   * Would it be possible to measure runtime code improvement?
   
   This functionality deserves a mention in the documentation :-)
   * https://nuttx.apache.org/docs/latest/reference/user/07_signals.html
   * 
https://nuttx.apache.org/docs/latest/guides/signaling_sem_priority_inheritance.html
   * 
https://nuttx.apache.org/docs/latest/standards/posix.html#posix-realtime-signals
   * ...


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