summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--c/src/exec/posix/headers/pthread.h16
-rw-r--r--c/src/exec/posix/headers/threadsup.h1
-rw-r--r--c/src/exec/posix/include/rtems/posix/pthread.h16
-rw-r--r--c/src/exec/posix/include/rtems/posix/threadsup.h1
-rw-r--r--cpukit/posix/include/rtems/posix/pthread.h16
-rw-r--r--cpukit/posix/include/rtems/posix/threadsup.h1
6 files changed, 18 insertions, 33 deletions
diff --git a/c/src/exec/posix/headers/pthread.h b/c/src/exec/posix/headers/pthread.h
index 48f3db551b..7e6eea2be7 100644
--- a/c/src/exec/posix/headers/pthread.h
+++ b/c/src/exec/posix/headers/pthread.h
@@ -25,12 +25,6 @@ extern "C" {
#include <rtems/posix/threadsup.h>
/*
- * Data Structure used to manage a POSIX thread
- */
-
-typedef Thread_Control POSIX_Threads_Control;
-
-/*
* The following defines the information control block used to manage
* this class of objects.
*/
@@ -69,7 +63,7 @@ void _POSIX_Threads_Manager_initialization(
* the inactive chain of free pthread control blocks.
*/
-STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Allocate( void );
+STATIC INLINE Thread_Control *_POSIX_Threads_Allocate( void );
/*
* _POSIX_Threads_Free
@@ -81,7 +75,7 @@ STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Allocate( void );
*/
STATIC INLINE void _POSIX_Threads_Free(
- POSIX_Threads_Control *the_pthread
+ Thread_Control *the_pthread
);
/*
@@ -98,8 +92,8 @@ STATIC INLINE void _POSIX_Threads_Free(
* to OBJECTS_ERROR and the_pthread is undefined.
*/
-STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Get(
- Objects_Id *id,
+STATIC INLINE Thread_Control *_POSIX_Threads_Get(
+ pthread_t id,
Objects_Locations *location
);
@@ -112,7 +106,7 @@ STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Get(
*/
STATIC INLINE boolean _POSIX_Threads_Is_null(
- POSIX_Threads_Control *the_pthread
+ Thread_Control *the_pthread
);
#include <rtems/posix/pthread.inl>
diff --git a/c/src/exec/posix/headers/threadsup.h b/c/src/exec/posix/headers/threadsup.h
index 7423dcbbef..23f33be5d5 100644
--- a/c/src/exec/posix/headers/threadsup.h
+++ b/c/src/exec/posix/headers/threadsup.h
@@ -10,6 +10,7 @@
typedef struct {
pthread_attr_t Attributes;
+ int detachstate;
#if 0
/*
* POSIX Interrupts
diff --git a/c/src/exec/posix/include/rtems/posix/pthread.h b/c/src/exec/posix/include/rtems/posix/pthread.h
index 48f3db551b..7e6eea2be7 100644
--- a/c/src/exec/posix/include/rtems/posix/pthread.h
+++ b/c/src/exec/posix/include/rtems/posix/pthread.h
@@ -25,12 +25,6 @@ extern "C" {
#include <rtems/posix/threadsup.h>
/*
- * Data Structure used to manage a POSIX thread
- */
-
-typedef Thread_Control POSIX_Threads_Control;
-
-/*
* The following defines the information control block used to manage
* this class of objects.
*/
@@ -69,7 +63,7 @@ void _POSIX_Threads_Manager_initialization(
* the inactive chain of free pthread control blocks.
*/
-STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Allocate( void );
+STATIC INLINE Thread_Control *_POSIX_Threads_Allocate( void );
/*
* _POSIX_Threads_Free
@@ -81,7 +75,7 @@ STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Allocate( void );
*/
STATIC INLINE void _POSIX_Threads_Free(
- POSIX_Threads_Control *the_pthread
+ Thread_Control *the_pthread
);
/*
@@ -98,8 +92,8 @@ STATIC INLINE void _POSIX_Threads_Free(
* to OBJECTS_ERROR and the_pthread is undefined.
*/
-STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Get(
- Objects_Id *id,
+STATIC INLINE Thread_Control *_POSIX_Threads_Get(
+ pthread_t id,
Objects_Locations *location
);
@@ -112,7 +106,7 @@ STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Get(
*/
STATIC INLINE boolean _POSIX_Threads_Is_null(
- POSIX_Threads_Control *the_pthread
+ Thread_Control *the_pthread
);
#include <rtems/posix/pthread.inl>
diff --git a/c/src/exec/posix/include/rtems/posix/threadsup.h b/c/src/exec/posix/include/rtems/posix/threadsup.h
index 7423dcbbef..23f33be5d5 100644
--- a/c/src/exec/posix/include/rtems/posix/threadsup.h
+++ b/c/src/exec/posix/include/rtems/posix/threadsup.h
@@ -10,6 +10,7 @@
typedef struct {
pthread_attr_t Attributes;
+ int detachstate;
#if 0
/*
* POSIX Interrupts
diff --git a/cpukit/posix/include/rtems/posix/pthread.h b/cpukit/posix/include/rtems/posix/pthread.h
index 48f3db551b..7e6eea2be7 100644
--- a/cpukit/posix/include/rtems/posix/pthread.h
+++ b/cpukit/posix/include/rtems/posix/pthread.h
@@ -25,12 +25,6 @@ extern "C" {
#include <rtems/posix/threadsup.h>
/*
- * Data Structure used to manage a POSIX thread
- */
-
-typedef Thread_Control POSIX_Threads_Control;
-
-/*
* The following defines the information control block used to manage
* this class of objects.
*/
@@ -69,7 +63,7 @@ void _POSIX_Threads_Manager_initialization(
* the inactive chain of free pthread control blocks.
*/
-STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Allocate( void );
+STATIC INLINE Thread_Control *_POSIX_Threads_Allocate( void );
/*
* _POSIX_Threads_Free
@@ -81,7 +75,7 @@ STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Allocate( void );
*/
STATIC INLINE void _POSIX_Threads_Free(
- POSIX_Threads_Control *the_pthread
+ Thread_Control *the_pthread
);
/*
@@ -98,8 +92,8 @@ STATIC INLINE void _POSIX_Threads_Free(
* to OBJECTS_ERROR and the_pthread is undefined.
*/
-STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Get(
- Objects_Id *id,
+STATIC INLINE Thread_Control *_POSIX_Threads_Get(
+ pthread_t id,
Objects_Locations *location
);
@@ -112,7 +106,7 @@ STATIC INLINE POSIX_Threads_Control *_POSIX_Threads_Get(
*/
STATIC INLINE boolean _POSIX_Threads_Is_null(
- POSIX_Threads_Control *the_pthread
+ Thread_Control *the_pthread
);
#include <rtems/posix/pthread.inl>
diff --git a/cpukit/posix/include/rtems/posix/threadsup.h b/cpukit/posix/include/rtems/posix/threadsup.h
index 7423dcbbef..23f33be5d5 100644
--- a/cpukit/posix/include/rtems/posix/threadsup.h
+++ b/cpukit/posix/include/rtems/posix/threadsup.h
@@ -10,6 +10,7 @@
typedef struct {
pthread_attr_t Attributes;
+ int detachstate;
#if 0
/*
* POSIX Interrupts