#3334: deadlock in _once() ----------------------------+--------------------- Reporter: Stavros Passas | Owner: (none) Type: defect | Status: new Priority: normal | Milestone: 5.1 Component: posix | Version: 4.11 Severity: normal | Resolution: Keywords: | Blocked By: Blocking: | ----------------------------+--------------------- Changes (by Sebastian Huber):
* milestone: 4.11.4 => 5.1 Comment: Please send patches to the mailing list. The yield loop may fail if thread priorities come into play. It should be replaced with a condition variable. So, for the once implementation we need a mutex and a condition variable (#include <rtems/thread.h>). There is currently no condition variable with API mutex support. We need protection from asynchronous deletion. Maybe use _Thread_Set_life_protection() directly in _Once(). If we want to back port this fix to RTEMS 4.11, then we have to use <sys/lock.h> instead of <rtems/thread.h>. -- Ticket URL: <http://devel.rtems.org/ticket/3334#comment:3> RTEMS Project <http://www.rtems.org/> RTEMS Project
_______________________________________________ bugs mailing list bugs@rtems.org http://lists.rtems.org/mailman/listinfo/bugs