SUMMARY: Stack overflow - help needed

From: Padiyath Sreekumaran (Kumar.Padiyath@psi.ch)
Date: Tue Apr 26 2005 - 05:22:23 EDT


   Hello,
   The question was:

> Hello,
> OS = Tru64 V5.1A
> One of the user got an error message during the execution of a
> program:
>
> stack overflow
> .
> .
> Core dumped.
>
> The present configuration:
> sysconfig -q proc output
>
> $sysconfig -q proc
> proc:
> max_proc_per_user = 256
> max_threads_per_user = 1024
> per_proc_stack_size = 4194304 <-------------------
> max_per_proc_stack_size = 48000000 <---------------------
> per_proc_data_size = 2147483648 max_per_proc_data_size = 2147483648
> max_per_proc_address_space = 2147483648
> per_proc_address_space = 2147483648
> executable_stack = 0
> autonice = 0
> autonice_time = 600
> autonice_penalty = 4
> open_max_soft = 4096
> open_max_hard = 4096
> ncallout_alloc_size = 8192
> round_robin_switch_rate = 0
> sched_min_idle = 0
> give_boost = 1
> maxusers = 2048
> num_wait_queues = 2048
> num_timeout_hash_queues = 2048
> enhanced_core_name = 0
> enhanced_core_max_versions = 16
> exec_disable_arg_limit = 0
> dump_cores = 1
> dump_setugid_cores = 0
>
> limit output:
> =============
>
> $limit
> cputime unlimited
> filesize unlimited
> datasize 2097152 kbytes
> stacksize 46875 kbytes
> coredumpsize unlimited
> memoryuse 3068192 kbytes
> vmemoryuse 2097152 kbytes
> descriptors 4096
>
> Can I just increase the process stack values(proc stack and max stack)
> without increasing the other values? What is the maximum size I can
> define
> for stack in a 3G memory machine?
>
----------------------------------------------------------------------------
-------

    I found in the meantime that another user was also a running a job
    on the machine which was taking most of the stack space.HP told me how I
have to
    increase the stack and Dr.Blinn gave me the following answer:
    
"You already have a very large stack size defined. The user
can unlimit the stack size default in their process using
the shell unlimit command or the ulimit program so that they can use up to
the currently defined max_per_proc_stack_size but if they've got a run-away
recursion or some other kind of program bug, doing so is unlikely to make
the problem go away.

So you should tell the user to investigate why their program
is overflowing the stack. It's probably a program bug, and
if it's a user written program, that's even more likely to
be the cause of the problem."

  HP gave the following solution:
 =================================

proc:
per_proc_stack_size = 268435456
max_per_proc_stack_size = 1073741824
per_proc_data_size = 2147483648
max_per_proc_data_size = 8589934592
per_proc_address_space = 4294967296
max_per_proc_address_space = 8589934592

          I have not yet taken any action since a long job is running on the
          machine.

          Thanks for your help and suggestions.

       Regards,
       Kumar

------------------------------------------------------------------
Padiyath Sreekumar | Tel: +41.56.310.3643
Paul Scherrer Institut | email: kumar.padiyath@psi.ch
AIT | Office: WHGA/U132
WHGA/U132 | Fax: +41.56.310.3649
CH-5232 Villigen PSI |
Switzerland |
-----------------------------------------------------------------



This archive was generated by hypermail 2.1.7 : Sat Apr 12 2008 - 10:50:18 EDT