General
cancel
Showing results for 
Search instead for 
Did you mean: 

Pid **** received a SIGSEGV for stack growth failure.

SOLVED
Go to solution
sabinkarvijay
Frequent Advisor

Pid **** received a SIGSEGV for stack growth failure.

Hi All,

I am receiving the fallowing error in the middle when the application is running...

"Pid **** received a SIGSEGV for stack growth failure.
Possible causes: insufficient memory or swap space,
or stack size exceeded maxssiz."

This is happening only when i am increasing the load on the application.

I could see that swapmemory is reaching 99% sometimes, please see the below output of swapinfo -tam

Mb Mb Mb PCT START/ Mb
TYPE AVAIL USED FREE USED LIMIT RESERVE PRI NAME
dev 4096 0 4096 0% 0 - 1 /dev/vx/dsk/rootdg/swapvol
reserve - 4096 -4096
memory 12724 12485 239 98%
total 16820 16581 239 99% - 0 -
1) Let me know after increasing or adding secondary swap will it resolves the problem?

I don't think there is no need of increasing stack size , I could see the stack size is already 128mb. Please see the ulimit -a output below:

time(seconds) unlimited
file(blocks) unlimited
data(kbytes) 2015464
stack(kbytes) 131072
memory(kbytes) unlimited
coredump(blocks) 4194303
nofiles(descriptors) 1024

2) let me know is the error related to stack also?

below is the output of coredump which was created at the time of error:(Please check if it useful)

PA-64 adb ($h help $q quit)
Error, objfil not correct file type. (1)
adb>$M
? map `core'
b1 = 0 0 e1 = 0 -1 f1 = 0 0
b2 = 0 0 e2 = 0 -1 f2 = 0 0
/ map `core'
Kernel: b = 0 0 e = 0 3C f = 70C
Common: b = **** e = **** f = 748
Registers: b = **** e = **** f = 758
Data/Text: b = 80000001 0 e = 80000001 4A0000 f = 0xBF0
MMF: b = 800003FF 0xBFE5D000 e = 800003FF 0xBFE67000 f = 4A0BF0
MMF: b = 800003FF 0xBFE67000 e = 800003FF 0xBFE69000 f = 4AABF0
MMF: b = 800003FF 0xBFE69000 e = 800003FF 0xBFE6A000 f = 4ACBF0
MMF: b = 800003FF 0xBFE6A000 e = 800003FF 0xBFE6B000 f = 4ADBF0
MMF: b = 800003FF 0xBFE6B000 e = 800003FF 0xBFE6C000 f = 4AEBF0
MMF: b = 800003FF 0xBFE6C000 e = 800003FF 0xBFE6C848 f = 4AFBF0
MMF: b = 800003FF 0xBFE6D000 e = 800003FF 0xBFE6F000 f = 4B0438
MMF: b = 800003FF 0xBFE6F000 e = 800003FF 0xBFE70000 f = 4B2438
MMF: b = 800003FF 0xBFE70000 e = 800003FF 0xBFE7F000 f = 4B3438
MMF: b = 800003FF 0xBFE7F000 e = 800003FF 0xBFE8C000 f = 4C2438
MMF: b = 800003FF 0xBFE8C000 e = 800003FF 0xBFE90000 f = 4CF438
MMF: b = 800003FF 0xBFE90000 e = 800003FF 0xBFE96000 f = 4D3438
MMF: b = 800003FF 0xBFE96000 e = 800003FF 0xBFE98000 f = 4D9438
MMF: b = 800003FF 0xBFE98000 e = 800003FF 0xBFE9E000 f = 4DB438
MMF: b = 800003FF 0xBFE9E000 e = 800003FF 0xBFEA1000 f = 4E1438
MMF: b = 800003FF 0xBFEA1000 e = 800003FF 0xBFF60000 f = 4E4438
MMF: b = 800003FF 0xBFF60000 e = 800003FF 0xBFF72000 f = 5A3438
MMF: b = 800003FF 0xBFF72000 e = 800003FF 0xBFF75000 f = 5B5438
MMF: b = 800003FF 0xBFF75000 e = 800003FF 0xBFF77000 f = 5B8438
MMF: b = 800003FF 0xBFF77000 e = 800003FF 0xBFF79000 f = 5BA438
MMF: b = 800003FF 0xBFF79000 e = 800003FF 0xBFFDA000 f = 5BC438
MMF: b = 800003FF 0xBFFDA000 e = 800003FF 0xBFFE7000 f = 61D438
MMF: b = 800003FF 0xBFFE7000 e = 800003FF 0xBFFE9000 f = 62A438
MMF: b = 800003FF 0xBFFE9000 e = 800003FF 0xBFFEE000 f = 62C438
MMF: b = 800003FF 0xBFFEE000 e = 800003FF 0xBFFF0000 f = 631438
Stack: b = 800003FF 0xBFFF0000 e = 800003FF 0xC0010000 f = 633438
/ map (inactive) `core' from `lookup_server'
b1 = 0 0 e1 = 0 -1 f1 = 0 0
b2 = 0 0 e2 = 0 -1 f2 = 0 0
and i could see the below error in dmesg output:

"Deferred swap reservation failure pid: **** "

If we would like to go for increasing or adding swap memory, how much we can increase?

Output of kernal parameters maxswapchunks and swchunk below:

kmtune | egrep -E "maxswapchunks|swchunk"
maxswapchunks 16384 - 16384
swchunk 2048 - 2048
Please provide your suggestions...

Let me know if you need any further details on this...

Thanks in Advance,

Regards,
Vijay Sabinkari.
4 REPLIES
James R. Ferguson
Acclaimed Contributor
Solution

Re: Pid **** received a SIGSEGV for stack growth failure.

Hi Vijay:

Well your are definitely out of swap space based on (1) your 'swapinfo' output and (2) the "defferred swap reservation failure" message.

I would start by adding additional secondary device swap, Make this as large as your physical memory size.

Regards!

...JRF...
Patrick Wallek
Honored Contributor

Re: Pid **** received a SIGSEGV for stack growth failure.

>>"Deferred swap reservation failure pid: **** "

Yes, this would indicate that you are running out of swap space.

>>how much we can increase?

You've only got 4 GB of device swap right now. You can have up to 32GB with your current setting I believe. If you have the disk space, I would add another 4 GB of device swap and see how things go.
Dennis Handly
Acclaimed Contributor

Re: Pid **** received a SIGSEGV for stack growth failure.

>below is the output of coredump which was created at the time of error:
Stack: b = 800003FF 0xBFFF0000 e = 800003FF 0xC0010000 f = 633438

The size of the stack in the core file is trivial, so you must be out of swap:
(gdb) p 0xC0010000 - 0xBFFF0000
$1 = 131072

Unless you just happened to touch pages way above the top of stack. Debugging the core file would tell you that.
Deepak Chetty
Occasional Visitor

Re: Pid **** received a SIGSEGV for stack growth failure.

We were encountering the same issue when running preclone on Ebiz application servers.
Oracle tar was raised thinking the errors was related to oracle binaries, however on further investigation we found CA agents running on OS version HP-UX 11.11 were creating this issue.

Even a simple cp -r command was throwing the errors listed below.
Pid 1**** received a SIGSEGV for stack growth failure.


Resolution: Shutting down the CA agents on the servers helped resolve this issue.

Cheers
Deepak