From 82c925af80cb4493cc15861c18fea64c57c2ee60 Mon Sep 17 00:00:00 2001 From: Christopher Faylor Date: Sun, 23 Oct 2005 23:47:45 +0000 Subject: * cygheap.h (cygheap_fdenum::cygheap_fdenum): Record locked state or suffer deadlocks. (class locked_process): Move to another header. * sync.h (lock_process): Define here. * cygtls.cc (_cygtls::fixup_after_fork): Reset spinning state as well as stacklock state. * dcrt0.cc (lock_process::locker): Define. (dtable::lock_cs): Delete. * dtable.cc (dtable_init): Eliminate call to init_lock(). (dtable::fixup_after_fork): Ditto. (dtable::init_lock): Delete definition. * dtable.h (dtable::init_lock): Delete declaration. (dtable::lock): Use process lock rather than dtable-specific lock. (dtable::unlock): Ditto. * sigproc.cc (sigproc_init): Minor change to debugging output. * times.cc (utime_worker): Use build_fh_pc rather than reinterpreting the posix path name again. Return any error from path_conv immediately. --- winsup/cygwin/dtable.h | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'winsup/cygwin/dtable.h') diff --git a/winsup/cygwin/dtable.h b/winsup/cygwin/dtable.h index e34a3ecf4..5e136ab9b 100644 --- a/winsup/cygwin/dtable.h +++ b/winsup/cygwin/dtable.h @@ -20,7 +20,6 @@ class fhandler_fifo; #define BFH_OPTS (PC_NULLEMPTY | PC_FULL | PC_POSIX) class dtable { - static muto lock_cs; fhandler_base **fds; #ifdef NEWVFORK fhandler_base **fds_on_hold; @@ -31,9 +30,8 @@ class dtable static const int initial_archetype_size = 8; int first_fd_for_open; int cnt_need_fixup_before; - void lock () {lock_cs.acquire ();} - void unlock () {lock_cs.release ();} - void init_lock (); + void lock () {lock_process::locker.acquire ();} + void unlock () {lock_process::locker.release ();} public: size_t size; -- cgit v1.2.3