Page 1 of 1

forbidden memory area access

Posted: Mon Jan 28, 2013 4:50 pm
by vshinde
Dear code saturne team,

I got below message while running the code (2.0.4 version). I suppose it is linked with the memory access to the code satunre on the my machine. Please guide.

errorfile output
---------------------------------------------------------------------
SIGSEGV signal (forbidden memory area access) intercepted!

Call stack:
1: 0x42742b <ustsns_+0x68b> (cs_solver)
2: 0x414ffb <preduv_+0x627b> (cs_solver)
3: 0x7f18c9661cb1 <navsto_+0xe01> (libsaturne.so.0)
4: 0x422961 <tridim_+0x9e79> (cs_solver)
5: 0x7f18c94df9a5 <caltri_+0x5085> (libsaturne.so.0)
6: 0x7f18c94baaa3 <cs_run+0x843> (libsaturne.so.0)
7: 0x7f18c94bad85 <main+0x1f5> (libsaturne.so.0)
8: 0x7f18c6a1ac8d <__libc_start_main+0xfd> (libc.so.6)
9: 0x40e989 <> (cs_solver)
End of stack
------------------------------------------------------------------------

Please find the listing file attached.

Thanks in advance for your time.

--
Vilas

Re: forbidden memory area access

Posted: Mon Jan 28, 2013 7:22 pm
by Yvan Fournier
Hello,

According to the call stack, the error appears in ustsns, which is a user subroutine.

So you probably have an out-of-bounds error (or missing initialization) in your user subroutine.
In version 2.0, a "favorite" error is to forget resetting iphas to 1 after a loop on iphas, but there are plenty of other possibilities...

So you need to check/debug your code.

Regards,

Yvan Fournier

Re: forbidden memory area access

Posted: Mon Jan 28, 2013 9:05 pm
by guingo
Hello,

as a starting point I would recommend to try in a terminal (in the directory containing your cs_solver)

Code: Select all

addr2line 0x42742b -e cs_solver
which can give you the line containing the error (as Yvan said, located in ustsns.f90)

Re: forbidden memory area access

Posted: Tue Jan 29, 2013 1:05 pm
by vshinde
Hello, Thank you for the concern.

In user subroutine, ustsns.f90
I read a data from file and then try to store in 'rtuser' array. That is where program stops.

Therefor I believe, it is associated with access to 'rtuser' array from the subroutine. It used to work on some other machine and with other version of code saturne :)

Thanks,
Vilas