[ODE] segv with memory allocation using dALLOCA16
Russ Smith
russ at q12.org
Wed Nov 21 21:30:02 MST 2001
> It turns out that when requesting a larger then available memory
> segment it still returns a non null pointer. So I'm guessing that's
> whats happening and causing the seg fault (A isn't null when the segv
> occurs on line 795).
that'd be my guess too. currently ODE does not fail gracefully when
it runs out of stack mem.
> Is there any way to correct this?
you have nj=124, which BTW is a *lot* of joints in a single island.
what is the corresponding m value? check the amount of memory being
allocated for A. if you have 124 hinge joints this is still only
2.9 Mb being allocated for A (for dReal = double), that should fit on a
linux stack with no problems. use getrlimit() to check your stack upper
limit. does your application have a lot of mmap()s that might be
crowding the stack?
russ.
--
Russell Smith
http://www.q12.org
More information about the ODE
mailing list