diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2004-06-11 20:37:10 +0000 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2004-06-11 20:37:10 +0000 |
commit | d0bd3e6f5653a16c8e82c969fb805f4a7d4faf40 (patch) | |
tree | 32f677032512db74362efe46308b87437c5fc58e /newlib/libc/stdio | |
parent | af6b55758bc44c58e70a1baf4061d8a8028f31d6 (diff) | |
download | cygnal-d0bd3e6f5653a16c8e82c969fb805f4a7d4faf40.tar.gz cygnal-d0bd3e6f5653a16c8e82c969fb805f4a7d4faf40.tar.bz2 cygnal-d0bd3e6f5653a16c8e82c969fb805f4a7d4faf40.zip |
2004-06-11 Antony King <antony.king@st.com>
* libc/include/sys/_types.h: Include <sys/lock.h> and change
_flock_t to be of type _LOCK_RECURSIVE_T.
* libc/include/sys/reent.h: (_REENT_INIT): Reformat.
(_REENT_INIT_PTR): Ditto. Use memset where appropriate.
(_global_impure_ptr): New declaration.
(_GLOBAL_REENT): Change to be _global_impure_ptr.
* libc/include/sys/stdio.h: Include <sys/lock.h> and
<sys/reent.h>.
(_flockfile)[!_SINGLE_THREAD]: Add code for lock call.
(_funlockfile)[!SINGLE_THREAD]: Ditto.
* libc/reent/impure.c: Set _global_impure_ptr to _impure_ptr.
* libc/stdio/fclose.c: Remove casting of fp lock to
_LOCK_RECURSIVE_T.
* libc/stdio/findfp.c: Ditto.
* libc/stdio/fopen.c: Ditto.
* libc/stdio/freopen.c: Ditto.
* libc/stdio/vfprintf.c: Ditto.
* libc/stdio64/fopen64.c: Ditto.
* libc/stdlib/envlock.c: Add default stubs that use generic
locking code.
* libc/stdlib/mlock.c: Ditto.
Jeff Johnston <jjohnstn@redhat.com>
* libc/sys/linux/sys/_types.h (__flock_mutex_t): New subtype.
(_flock_t): Change to be a struct containing a single member
named mutex which is of type __flock_mutex_t.
Diffstat (limited to 'newlib/libc/stdio')
-rw-r--r-- | newlib/libc/stdio/fclose.c | 2 | ||||
-rw-r--r-- | newlib/libc/stdio/findfp.c | 8 | ||||
-rw-r--r-- | newlib/libc/stdio/fopen.c | 2 | ||||
-rw-r--r-- | newlib/libc/stdio/freopen.c | 2 | ||||
-rw-r--r-- | newlib/libc/stdio/vfprintf.c | 4 |
5 files changed, 9 insertions, 9 deletions
diff --git a/newlib/libc/stdio/fclose.c b/newlib/libc/stdio/fclose.c index 2f2ae47fa..f9fd17cb0 100644 --- a/newlib/libc/stdio/fclose.c +++ b/newlib/libc/stdio/fclose.c @@ -98,7 +98,7 @@ _DEFUN(_fclose_r, (rptr, fp), fp->_flags = 0; /* release this FILE for reuse */ _funlockfile (fp); #ifndef __SINGLE_THREAD__ - __lock_close_recursive (*(_LOCK_RECURSIVE_T *)&fp->_lock); + __lock_close_recursive (fp->_lock); #endif __sfp_lock_release (); diff --git a/newlib/libc/stdio/findfp.c b/newlib/libc/stdio/findfp.c index 9a9cb037e..a9695ffff 100644 --- a/newlib/libc/stdio/findfp.c +++ b/newlib/libc/stdio/findfp.c @@ -47,7 +47,7 @@ _DEFUN(std, (ptr, flags, file, data), ptr->_seek = __sseek; ptr->_close = __sclose; #if !defined(__SINGLE_THREAD__) && !defined(_REENT_SMALL) - __lock_init_recursive (*(_LOCK_RECURSIVE_T *)&ptr->_lock); + __lock_init_recursive (ptr->_lock); /* * #else * lock is already initialized in __sfp @@ -112,7 +112,7 @@ found: fp->_file = -1; /* no file */ fp->_flags = 1; /* reserve this slot; caller sets real flags */ #ifndef __SINGLE_THREAD__ - __lock_init_recursive (*(_LOCK_RECURSIVE_T *)&fp->_lock); + __lock_init_recursive (fp->_lock); #endif __sfp_lock_release (); @@ -143,8 +143,8 @@ _VOID _DEFUN(_cleanup_r, (ptr), struct _reent *ptr) { - /* _CAST_VOID _fwalk(fclose); */ - _CAST_VOID _fwalk (ptr, fflush); /* `cheating' */ + _CAST_VOID _fwalk(ptr, fclose); + /* _CAST_VOID _fwalk (ptr, fflush); */ /* `cheating' */ } #ifndef _REENT_ONLY diff --git a/newlib/libc/stdio/fopen.c b/newlib/libc/stdio/fopen.c index 816e1725c..64c24e7ef 100644 --- a/newlib/libc/stdio/fopen.c +++ b/newlib/libc/stdio/fopen.c @@ -143,7 +143,7 @@ _DEFUN(_fopen_r, (ptr, file, mode), __sfp_lock_acquire (); fp->_flags = 0; /* release */ #ifndef __SINGLE_THREAD__ - __lock_close_recursive (*(_LOCK_RECURSIVE_T *)&fp->_lock); + __lock_close_recursive (fp->_lock); #endif __sfp_lock_release (); return NULL; diff --git a/newlib/libc/stdio/freopen.c b/newlib/libc/stdio/freopen.c index 83128525a..d4a65e77b 100644 --- a/newlib/libc/stdio/freopen.c +++ b/newlib/libc/stdio/freopen.c @@ -157,7 +157,7 @@ _DEFUN(_freopen_r, (ptr, file, mode, fp), ptr->_errno = e; /* restore in case _close clobbered */ _funlockfile (fp); #ifndef __SINGLE_THREAD__ - __lock_close_recursive (*(_LOCK_RECURSIVE_T *)&fp->_lock); + __lock_close_recursive (fp->_lock); #endif __sfp_lock_release (); return NULL; diff --git a/newlib/libc/stdio/vfprintf.c b/newlib/libc/stdio/vfprintf.c index b589d18d7..9e970cef3 100644 --- a/newlib/libc/stdio/vfprintf.c +++ b/newlib/libc/stdio/vfprintf.c @@ -255,7 +255,7 @@ _DEFUN(__sbprintf, (rptr, fp, fmt, ap), fake._bf._size = fake._w = sizeof (buf); fake._lbfsize = 0; /* not actually used, but Just In Case */ #ifndef __SINGLE_THREAD__ - __lock_init_recursive (*(_LOCK_RECURSIVE_T *)&fake._lock); + __lock_init_recursive (fake._lock); #endif /* do the work, then copy any error status */ @@ -266,7 +266,7 @@ _DEFUN(__sbprintf, (rptr, fp, fmt, ap), fp->_flags |= __SERR; #ifndef __SINGLE_THREAD__ - __lock_close_recursive (*(_LOCK_RECURSIVE_T *)&fake._lock); + __lock_close_recursive (fake._lock); #endif return (ret); } |