Revision: 32612
http://sourceforge.net/p/opalvoip/code/32612
Author: rjongbloed
Date: 2014-08-28 09:52:42 +0000 (Thu, 28 Aug 2014)
Log Message:
-----------
Put fail safe on setting pthreads stack size, and an assert on error setting it.
Modified Paths:
--------------
ptlib/trunk/src/ptlib/unix/tlibthrd.cxx
Modified: ptlib/trunk/src/ptlib/unix/tlibthrd.cxx
===================================================================
--- ptlib/trunk/src/ptlib/unix/tlibthrd.cxx 2014-08-28 04:16:50 UTC (rev 32611)
+++ ptlib/trunk/src/ptlib/unix/tlibthrd.cxx 2014-08-28 09:52:42 UTC (rev 32612)
@@ -445,16 +445,18 @@
pthread_attr_init(&threadAttr);
PAssertPTHREAD(pthread_attr_setdetachstate, (&threadAttr, PTHREAD_CREATE_DETACHED));
-#if defined(P_LINUX)
+ if (m_originalStackSize == 0) {
+ PTRACE(3, "PTlib\tUsing default stack size: " << PThreadMinimumStack);
+ m_originalStackSize = PThreadMinimumStack;
+ }
- pthread_attr_setstacksize(&threadAttr, m_originalStackSize);
+ PAssertPTHREAD(pthread_attr_setstacksize, (&threadAttr, m_originalStackSize));
+#if defined(P_LINUX)
struct sched_param sched_params;
PAssertPTHREAD(pthread_attr_setschedpolicy, (&threadAttr, GetSchedParam(PX_priority, sched_params)));
PAssertPTHREAD(pthread_attr_setschedparam, (&threadAttr, &sched_params));
-
#elif defined(P_RTEMS)
- pthread_attr_setstacksize(&threadAttr, 2*PTHREAD_MINIMUM_STACK_SIZE);
pthread_attr_setinheritsched(&threadAttr, PTHREAD_EXPLICIT_SCHED);
pthread_attr_setschedpolicy(&threadAttr, SCHED_OTHER);
struct sched_param sched_param;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|