|
From: Tom H. <to...@co...> - 2010-08-24 07:42:59
|
On 24/08/10 07:19, Todd Jackson wrote: > Backround: I have test programs that contain instructions that shift the stack pointer between 4 and 6 MB down (eg. leal $-4243104(%esp), %esp) at the beginning of the program. This causes Valgrind to receive a signal 11, manipulate the stack, and then restart the instruction that caused the signal. Valgrind tells me that it thinks that the client has switched stacks and to use --max-stackframe=6291452. I have tried --main-stacksize and the given --max-stackframe option to suppress the signal to no avail. Valgrind runs fine - I just want to avoid this signal 11. From the comments in Valgrind it seems like the signal is caused by the program exceeding some kind of stack limit, but I'm not sure where. Why do you want to stop the signal 11 though? It's entirely normal and is how the stack gets extended in all programs. The only difference is that normally the fault is handled by the kernel, which extends the stack and restarts the program, and here valgrind is acting as the supervisor and catching the fault and performing the stack extension. Tom -- Tom Hughes (to...@co...) http://compton.nu/ |