Home | History | Annotate | Download | only in stdio
History log of /src/lib/libc/stdio/flockfile.c
RevisionDateAuthorComments
 1.11  15-Mar-2012  christos - ansify, knf.
- no functional changes
 1.10  08-Dec-2010  joerg branches: 1.10.6;
Don't redeclare __isthreaded.
 1.9  28-Apr-2008  martin branches: 1.9.8;
Remove clause 3 and 4 from TNF licenses
 1.8  22-Jul-2003  nathanw branches: 1.8.30;
Disable cancellation on the first lock, too, not just on internal
recursive locks (Duh).

Disable cancellation around the cond_wait() call, since that's also a
cancellation point. Arguably, that would be better handled with
pthread_cleanup_*(), but stubbing those for libc is difficult, and the
current non-exception-based implementation of cleanup handlers is
probably no faster than disabling and reenabling cancellation.
Finally, it only happens in the slow path where the thread is going to
sleep anyway...
 1.7  21-Jul-2003  nathanw Set the _LOCKINTERNAL() count on initial locking as well as subsequent
recursive locks.
 1.6  19-Jul-2003  nathanw Use threadlib stub rather than pthread_setcancelstate() directly.
 1.5  18-Jul-2003  nathanw Move guts of flockfile()/funlockfile() to __flockfile_internal(), which
takes an additional argument indicating whether this is an internal caller
taking the lock or an external (application) caller. When making an internal
lock, save the current thread cancellation state and disable cancellation
until the matching unlock. This should prevent canccelled threads from exiting
inside of stdio while holding a file lock and potentially leaving other
parts of the FILE structure in an inconsistent state.
 1.4  01-Feb-2003  nathanw Revert the conversion to libpthread's recursive mutexes. Too much
trouble is caused by the memory allocation in the mutex initialization,
and uncontested mutexes and condition variables have become faster in the
meantime.
 1.3  21-Jan-2003  nathanw Use recursive mutexes from libpthread rather than implementing
our own with normal mutexes and condition variables.
 1.2  18-Jan-2003  thorpej Merge the nathanw_sa branch.
 1.1  06-Feb-2002  nathanw branches: 1.1.2;
file flockfile.c was initially added on branch nathanw_sa.
 1.1.2.1  06-Feb-2002  nathanw Implement flockfile(), ftrylockfile(), and funlockfile().
(Ewwww. Recursive mutexes.)
 1.8.30.1  18-May-2008  yamt sync with head.
 1.9.8.2  28-Apr-2008  martin Remove clause 3 and 4 from TNF licenses
 1.9.8.1  28-Apr-2008  martin file flockfile.c was added on branch christos-time_t on 2008-04-28 20:23:01 +0000
 1.10.6.1  17-Apr-2012  yamt sync with head

RSS XML Feed