]> rtime.felk.cvut.cz Git - l4.git/blobdiff - l4/pkg/uclibc/lib/contrib/uclibc/libpthread/nptl/pthread_exit.c
update
[l4.git] / l4 / pkg / uclibc / lib / contrib / uclibc / libpthread / nptl / pthread_exit.c
index 88d3859b793fc573f9f0d67dd7c1b858c0650e9c..141ca750dedb5e7ab1f31e863f9d8815c47cdd18 100644 (file)
    Lesser General Public License for more details.
 
    You should have received a copy of the GNU Lesser General Public
-   License along with the GNU C Library; if not, write to the Free
-   Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
-   02111-1307 USA.  */
+   License along with the GNU C Library; if not, see
+   <http://www.gnu.org/licenses/>.  */
 
 #include <stdlib.h>
 #include "pthreadP.h"
 
 
 void
-attribute_protected
+attribute_protected attribute_noreturn
 __pthread_exit (void* value)
 {
   THREAD_SETMEM (THREAD_SELF, result, value);
@@ -30,3 +29,9 @@ __pthread_exit (void* value)
   __do_cancel ();
 }
 strong_alias (__pthread_exit, pthread_exit)
+
+/*
+ * After a thread terminates, __uClibc_main decrements __nptl_nthreads
+ * defined in pthread_create.c.
+ */
+PTHREAD_STATIC_FN_REQUIRE (pthread_create)