mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-30 22:43:12 +03:00
* pthread_mutex_destroy.c: Set mutex type to an invalid value.
* pthread_mutex_lock.c: Return EINVAL for invalid mutex type. * pthread_mutex_trylock.c: Likewise. * pthread_mutex_timedlock.c: Likewise. * pthread_mutex_unlock.c: Likewise.
This commit is contained in:
@ -1,3 +1,11 @@
|
|||||||
|
2005-12-23 Ulrich Drepper <drepper@redhat.com>
|
||||||
|
|
||||||
|
* pthread_mutex_destroy.c: Set mutex type to an invalid value.
|
||||||
|
* pthread_mutex_lock.c: Return EINVAL for invalid mutex type.
|
||||||
|
* pthread_mutex_trylock.c: Likewise.
|
||||||
|
* pthread_mutex_timedlock.c: Likewise.
|
||||||
|
* pthread_mutex_unlock.c: Likewise.
|
||||||
|
|
||||||
2005-12-22 Roland McGrath <roland@redhat.com>
|
2005-12-22 Roland McGrath <roland@redhat.com>
|
||||||
|
|
||||||
* sysdeps/pthread/sigaction.c: Use "" instead of <> to include self,
|
* sysdeps/pthread/sigaction.c: Use "" instead of <> to include self,
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
|
/* Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||||
|
|
||||||
@ -28,6 +28,9 @@ __pthread_mutex_destroy (mutex)
|
|||||||
if (mutex->__data.__nusers != 0)
|
if (mutex->__data.__nusers != 0)
|
||||||
return EBUSY;
|
return EBUSY;
|
||||||
|
|
||||||
|
/* Set to an invalid value. */
|
||||||
|
mutex->__data.__kind = -1;
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
strong_alias (__pthread_mutex_destroy, pthread_mutex_destroy)
|
strong_alias (__pthread_mutex_destroy, pthread_mutex_destroy)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
|
/* Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||||
|
|
||||||
@ -68,8 +68,6 @@ __pthread_mutex_lock (mutex)
|
|||||||
|
|
||||||
/* FALLTHROUGH */
|
/* FALLTHROUGH */
|
||||||
|
|
||||||
default:
|
|
||||||
/* Correct code cannot set any other type. */
|
|
||||||
case PTHREAD_MUTEX_TIMED_NP:
|
case PTHREAD_MUTEX_TIMED_NP:
|
||||||
simple:
|
simple:
|
||||||
/* Normal mutex. */
|
/* Normal mutex. */
|
||||||
@ -102,6 +100,10 @@ __pthread_mutex_lock (mutex)
|
|||||||
mutex->__data.__spins += (cnt - mutex->__data.__spins) / 8;
|
mutex->__data.__spins += (cnt - mutex->__data.__spins) / 8;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
/* Correct code cannot set any other type. */
|
||||||
|
return EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Record the ownership. */
|
/* Record the ownership. */
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc.
|
/* Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||||
|
|
||||||
@ -70,8 +70,6 @@ pthread_mutex_timedlock (mutex, abstime)
|
|||||||
|
|
||||||
/* FALLTHROUGH */
|
/* FALLTHROUGH */
|
||||||
|
|
||||||
default:
|
|
||||||
/* Correct code cannot set any other type. */
|
|
||||||
case PTHREAD_MUTEX_TIMED_NP:
|
case PTHREAD_MUTEX_TIMED_NP:
|
||||||
simple:
|
simple:
|
||||||
/* Normal mutex. */
|
/* Normal mutex. */
|
||||||
@ -104,6 +102,10 @@ pthread_mutex_timedlock (mutex, abstime)
|
|||||||
mutex->__data.__spins += (cnt - mutex->__data.__spins) / 8;
|
mutex->__data.__spins += (cnt - mutex->__data.__spins) / 8;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
/* Correct code cannot set any other type. */
|
||||||
|
return EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (result == 0)
|
if (result == 0)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
|
/* Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||||
|
|
||||||
@ -57,8 +57,6 @@ __pthread_mutex_trylock (mutex)
|
|||||||
|
|
||||||
case PTHREAD_MUTEX_ERRORCHECK_NP:
|
case PTHREAD_MUTEX_ERRORCHECK_NP:
|
||||||
/* Error checking mutex. We do not check for deadlocks. */
|
/* Error checking mutex. We do not check for deadlocks. */
|
||||||
default:
|
|
||||||
/* Correct code cannot set any other type. */
|
|
||||||
case PTHREAD_MUTEX_TIMED_NP:
|
case PTHREAD_MUTEX_TIMED_NP:
|
||||||
case PTHREAD_MUTEX_ADAPTIVE_NP:
|
case PTHREAD_MUTEX_ADAPTIVE_NP:
|
||||||
/* Normal mutex. */
|
/* Normal mutex. */
|
||||||
@ -70,6 +68,10 @@ __pthread_mutex_trylock (mutex)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
default:
|
||||||
|
/* Correct code cannot set any other type. */
|
||||||
|
return EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
return EBUSY;
|
return EBUSY;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
|
/* Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
|
||||||
This file is part of the GNU C Library.
|
This file is part of the GNU C Library.
|
||||||
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
Contributed by Ulrich Drepper <drepper@redhat.com>, 2002.
|
||||||
|
|
||||||
@ -47,12 +47,14 @@ __pthread_mutex_unlock_usercnt (mutex, decr)
|
|||||||
return EPERM;
|
return EPERM;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
|
||||||
/* Correct code cannot set any other type. */
|
|
||||||
case PTHREAD_MUTEX_TIMED_NP:
|
case PTHREAD_MUTEX_TIMED_NP:
|
||||||
case PTHREAD_MUTEX_ADAPTIVE_NP:
|
case PTHREAD_MUTEX_ADAPTIVE_NP:
|
||||||
/* Normal mutex. Nothing special to do. */
|
/* Normal mutex. Nothing special to do. */
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
/* Correct code cannot set any other type. */
|
||||||
|
return EINVAL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Always reset the owner field. */
|
/* Always reset the owner field. */
|
||||||
|
Reference in New Issue
Block a user