Lazar Stricevic
2007-11-19 22:01:54 UTC
Hi everyone,
We encountered a problem with stack size of omniORB on Tru64 v5.1. It
turned out that stack is too small for us (it is only 32768 bytes), so
we had to increase it. Stack size was increased to 1MB (since it seems
to be stack size on Windows) and omniORB has been running fine with it
for some time now.
Change was made to omniORB-4.1.1/src/lib/omnithread/posix.cc Patch file
for omniORB 4.1.1 is attached and patch files for older versions are
available upon request.
Regards,
Lazar
-------------- next part --------------
diff -cr omniORB-4.1.1/src/lib/omnithread/posix.cc src/lib/omnithread/posix.cc
*** omniORB-4.1.1/src/lib/omnithread/posix.cc Fri Jul 8 19:04:58 2005
--- src/lib/omnithread/posix.cc Mon Jul 9 17:00:46 2007
***************
*** 281,289 ****
static int highest_priority;
#endif
! #if defined(__osf1__) && defined(__alpha__) || defined(__VMS)
// omniORB requires a larger stack size than the default (21120) on OSF/1
static size_t stack_size = 32768;
#elif defined(__rtems__)
static size_t stack_size = ThreadStackSize;
#elif defined(__aix__)
--- 281,291 ----
static int highest_priority;
#endif
! #if defined(__osf1__) && defined(__alpha__) && (__OSVERSION__ < 5) || defined(__VMS)
// omniORB requires a larger stack size than the default (21120) on OSF/1
static size_t stack_size = 32768;
+ #elif defined(__osf1__) && defined(__alpha__) && (__OSVERSION__ >= 5)
+ static size_t stack_size = 1048576; //Added by Vladislav Vrtunski, DMS Gruop. It is 1MB to be the same as on WinNT.
#elif defined(__rtems__)
static size_t stack_size = ThreadStackSize;
#elif defined(__aix__)
***************
*** 943,949 ****
unsigned long
omni_thread::stacksize()
{
! return stack_size;
}
//
--- 945,952 ----
unsigned long
omni_thread::stacksize()
{
! return stack_size
! ;
}
//
We encountered a problem with stack size of omniORB on Tru64 v5.1. It
turned out that stack is too small for us (it is only 32768 bytes), so
we had to increase it. Stack size was increased to 1MB (since it seems
to be stack size on Windows) and omniORB has been running fine with it
for some time now.
Change was made to omniORB-4.1.1/src/lib/omnithread/posix.cc Patch file
for omniORB 4.1.1 is attached and patch files for older versions are
available upon request.
Regards,
Lazar
-------------- next part --------------
diff -cr omniORB-4.1.1/src/lib/omnithread/posix.cc src/lib/omnithread/posix.cc
*** omniORB-4.1.1/src/lib/omnithread/posix.cc Fri Jul 8 19:04:58 2005
--- src/lib/omnithread/posix.cc Mon Jul 9 17:00:46 2007
***************
*** 281,289 ****
static int highest_priority;
#endif
! #if defined(__osf1__) && defined(__alpha__) || defined(__VMS)
// omniORB requires a larger stack size than the default (21120) on OSF/1
static size_t stack_size = 32768;
#elif defined(__rtems__)
static size_t stack_size = ThreadStackSize;
#elif defined(__aix__)
--- 281,291 ----
static int highest_priority;
#endif
! #if defined(__osf1__) && defined(__alpha__) && (__OSVERSION__ < 5) || defined(__VMS)
// omniORB requires a larger stack size than the default (21120) on OSF/1
static size_t stack_size = 32768;
+ #elif defined(__osf1__) && defined(__alpha__) && (__OSVERSION__ >= 5)
+ static size_t stack_size = 1048576; //Added by Vladislav Vrtunski, DMS Gruop. It is 1MB to be the same as on WinNT.
#elif defined(__rtems__)
static size_t stack_size = ThreadStackSize;
#elif defined(__aix__)
***************
*** 943,949 ****
unsigned long
omni_thread::stacksize()
{
! return stack_size;
}
//
--- 945,952 ----
unsigned long
omni_thread::stacksize()
{
! return stack_size
! ;
}
//