aboutsummaryrefslogtreecommitdiffstats
path: root/net/opal3/files/patch-aa
diff options
context:
space:
mode:
Diffstat (limited to 'net/opal3/files/patch-aa')
-rw-r--r--net/opal3/files/patch-aa29
1 files changed, 0 insertions, 29 deletions
diff --git a/net/opal3/files/patch-aa b/net/opal3/files/patch-aa
deleted file mode 100644
index cf262107575..00000000000
--- a/net/opal3/files/patch-aa
+++ /dev/null
@@ -1,29 +0,0 @@
-*** ../pwlib/src/ptlib/unix/tlibthrd.cxx.orig Thu Nov 16 11:14:48 2000
---- ../pwlib/src/ptlib/unix/tlibthrd.cxx Thu Nov 16 11:15:21 2000
-*************** void PThread::PX_NewThread(BOOL startSus
-*** 386,391 ****
---- 386,409 ----
- // pthread_attr_t threadAttr;
- // pthread_attr_init(&threadAttr);
- PAssertOS(pthread_create(&PX_threadId, NULL, PX_ThreadStart, this) == 0);
-+
-+ #if defined(P_FREEBSD)
-+ // There is a potential race condition here which shows up with FreeBSD 4.2
-+ // and later, but really applies to all pthread libraries.
-+ // If a thread is started in suspend mode, we need to make sure
-+ // the thread (PX_ThreadStart) has had a chance to execute and block on the
-+ // sigwait() (blocking on the Resume Signal) before this function returns.
-+ // Otherwise the main program may issue a Resume Signal on the thread
-+ // by calling PThread::Resume() before the thread is ready for it.
-+ // If that happens the program will abort with an unhandled signal error.
-+ // A workaround (not 100% guaranteed) is to yield here, which gives
-+ // the newly created thread (PX_ThreadStart) a chance to execute.
-+
-+ if (startSuspended) {
-+ sched_yield();
-+ }
-+ #endif
-+
- }
-
-