2003-11-04  Ulrich Drepper  <drepper@redhat.com>

	* sysdeps/pthread/bits/stdio-lock.h: Use lll_*lock instead of
	lll_mutex_*lock macros to skip atomic operations on some archs.
This commit is contained in:
Ulrich Drepper 2003-11-04 23:43:40 +00:00
parent 9378784537
commit c28422b575
3 changed files with 10 additions and 5 deletions

View File

@ -1,3 +1,8 @@
2003-11-04 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/stdio-lock.h: Use lll_*lock instead of
lll_mutex_*lock macros to skip atomic operations on some archs.
2003-11-03 Ulrich Drepper <drepper@redhat.com> 2003-11-03 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/tst-timer.c (main): Initialize * sysdeps/pthread/tst-timer.c (main): Initialize

View File

@ -29,7 +29,7 @@
typedef struct { int lock; int cnt; void *owner; } _IO_lock_t; typedef struct { int lock; int cnt; void *owner; } _IO_lock_t;
#define _IO_lock_initializer { LLL_MUTEX_LOCK_INITIALIZER, 0, NULL } #define _IO_lock_initializer { LLL_LOCK_INITIALIZER, 0, NULL }
#define _IO_lock_init(_name) \ #define _IO_lock_init(_name) \
((_name) = (_IO_lock_t) _IO_lock_initializer , 0) ((_name) = (_IO_lock_t) _IO_lock_initializer , 0)
@ -42,7 +42,7 @@ typedef struct { int lock; int cnt; void *owner; } _IO_lock_t;
void *__self = THREAD_SELF; \ void *__self = THREAD_SELF; \
if ((_name).owner != __self) \ if ((_name).owner != __self) \
{ \ { \
lll_mutex_lock ((_name).lock); \ lll_lock ((_name).lock); \
(_name).owner = __self; \ (_name).owner = __self; \
} \ } \
++(_name).cnt; \ ++(_name).cnt; \
@ -54,7 +54,7 @@ typedef struct { int lock; int cnt; void *owner; } _IO_lock_t;
void *__self = THREAD_SELF; \ void *__self = THREAD_SELF; \
if ((_name).owner != __self) \ if ((_name).owner != __self) \
{ \ { \
if (lll_mutex_trylock ((_name).lock) == 0) \ if (lll_trylock ((_name).lock) == 0) \
{ \ { \
(_name).owner = __self; \ (_name).owner = __self; \
(_name).cnt = 1; \ (_name).cnt = 1; \
@ -72,7 +72,7 @@ typedef struct { int lock; int cnt; void *owner; } _IO_lock_t;
if (--(_name).cnt == 0) \ if (--(_name).cnt == 0) \
{ \ { \
(_name).owner = NULL; \ (_name).owner = NULL; \
lll_mutex_unlock ((_name).lock); \ lll_unlock ((_name).lock); \
} \ } \
} while (0) } while (0)

View File

@ -86,7 +86,7 @@ main (void)
sigev2.sigev_notify_attributes = NULL; sigev2.sigev_notify_attributes = NULL;
/* It is unnecessary to do the following but to set a good example /* It is unnecessary to do the following but to set a good example
we do it anyhow. */ we do it anyhow. */
sigev2.sigev_value = 0; sigev2.sigev_value.sival_ptr = NULL;
setvbuf (stdout, 0, _IOLBF, 0); setvbuf (stdout, 0, _IOLBF, 0);