I have a gdb
backtrace of a crashed process, but I can't see the specific line in which the crash occurred because the source code was not in that moment. I don't understand some of the information given by the mentioned backtrace.
The backtrace is made of lines like the following one:
<path_to_binary_file>(_Z12someFunction+0x18)[0x804a378]
Notice that _Z12someFunction
is the mangled name of int someFunction(double )
.
My questions are:
Does the +0x18
indicate the offset, starting at _Z12someFunction
address, of the assembly instruction that produced the crash?
If the previous question is affirmative, and taking into account that I am working with a 32-bit architecture, does the +0x18
indicates 0x18 * 4 bytes?
If the above is affirmative, I assume that the address 0x804a378
is the _Z12someFunction
plus 0x18
, am I right?
EDIT:
The error has ocurred in a production machine (no cores enabled), and it seems to be a timing-dependant bug, so it is not easy to reproduce it. That is because the information I am asking for is important to me in this occasion.