summaryrefslogtreecommitdiffstats
path: root/cpukit/posix/src
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-20 09:38:56 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-05-20 16:16:58 +0200
commit28ba7e20aa8dbd7ac7b2dc782755c71fc647f1d0 (patch)
treeec437ac66246efb6926d6475bf9c1e915c257111 /cpukit/posix/src
parentposix: Add and use _POSIX_Get_object_body() (diff)
downloadrtems-28ba7e20aa8dbd7ac7b2dc782755c71fc647f1d0.tar.bz2
posix: Remove dead code and shrink comment
Diffstat (limited to 'cpukit/posix/src')
-rw-r--r--cpukit/posix/src/mutexinit.c38
1 files changed, 3 insertions, 35 deletions
diff --git a/cpukit/posix/src/mutexinit.c b/cpukit/posix/src/mutexinit.c
index 18886996fe..8de76d073f 100644
--- a/cpukit/posix/src/mutexinit.c
+++ b/cpukit/posix/src/mutexinit.c
@@ -46,49 +46,17 @@ int pthread_mutex_init(
return EINVAL;
/*
- * This code should eventually be removed.
- *
- * Although the POSIX specification says:
+ * The POSIX specification says:
*
* "Attempting to initialize an already initialized mutex results
* in undefined behavior."
*
* Trying to keep the caller from doing the create when *mutex
* is actually a valid ID causes grief. All it takes is the wrong
- * value in an uninitialized variable to make this fail. As best
- * I can tell, RTEMS was the only pthread implementation to choose
- * this option for "undefined behavior" and doing so has created
- * portability problems. In particular, Rosimildo DaSilva
- * <rdasilva@connecttel.com> saw seemingly random failures in the
- * RTEMS port of omniORB2 when this code was enabled.
+ * value in an uninitialized variable to make this fail.
*
- * Joel Sherrill <joel@OARcorp.com> 14 May 1999
- * NOTE: Be careful to avoid infinite recursion on call to this
- * routine in _POSIX_Mutex_Get.
+ * Thus, we do not look at *mutex.
*/
- #if 0
- {
- POSIX_Mutex_Control *mutex_in_use;
- Objects_Locations location;
-
- if ( *mutex != PTHREAD_MUTEX_INITIALIZER ) {
-
- /* EBUSY if *mutex is a valid id */
-
- mutex_in_use = _POSIX_Mutex_Get( mutex, &location );
- switch ( location ) {
- case OBJECTS_LOCAL:
- _Objects_Put( &mutex_in_use->Object );
- return EBUSY;
- #if defined(RTEMS_MULTIPROCESSING)
- case OBJECTS_REMOTE:
- #endif
- case OBJECTS_ERROR:
- break;
- }
- }
- }
- #endif
if ( !the_attr->is_initialized )
return EINVAL;