Thread Life Cycle Re-Implementation

Sebastian Huber sebastian.huber at embedded-brains.de
Tue Mar 25 12:49:04 UTC 2014


The primary objective of this change set is support for thread restart and
delete on SMP configurations.  It enables also forced thread migration.

For background information please have a look at:

http://www.rtems.org/wiki/index.php?title=SMP#Thread_Restart

http://www.rtems.org/wiki/index.php?title=SMP#Thread_Delete

http://www.rtems.org/pipermail/rtems-devel/2013-July/003509.html

http://www.rtems.org/wiki/index.php?title=SMP#Post-Switch_Actions

This change set fixes the following problems:

SMP race condition between stack free and dispatch
https://www.rtems.org/bugzilla/show_bug.cgi?id=1814

psxcancel reveals NULL pointer access in _Thread_queue_Extract()
https://www.rtems.org/bugzilla/show_bug.cgi?id=2035

Race condition in _Thread_queue_Extract_with_proxy()
https://www.rtems.org/bugzilla/show_bug.cgi?id=2151

Race condition with unified work areas
https://www.rtems.org/bugzilla/show_bug.cgi?id=2152

The POSIX cleanup handler are called in the right context (should be called in
the context of the deleting thread).

http://pubs.opengroup.org/onlinepubs/009695399/functions/xsh_chap02_09.html 

This change set should go into RTEMS 4.11 due to the bug fixes.



More information about the devel mailing list