Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 363773 - Agent exits on getting frame info
Summary: Agent exits on getting frame info
Status: RESOLVED FIXED
Alias: None
Product: TCF
Classification: Tools
Component: Agent (show other bugs)
Version: unspecified   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 0.5.0   Edit
Assignee: Project Inbox CLA
QA Contact: Eugene Tarassov CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-11-15 02:23 EST by Frederic Leger CLA
Modified: 2013-06-05 06:07 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Frederic Leger CLA 2011-11-15 02:23:56 EST
Build Identifier: 

While trying to understand all the possibilities of the symbols service of the agent, I had it exit with :

agent: services/symbols_elf.c :1076 : get_stack_tracing_info:  L'assertion « rt_addr == elf_map_to_run_time_address(ctx, file, sec, lt_addr) » a échoué.
Abandon (core dumped)

The address I provided to the frame info request is something I retrieved from the memory map :

TCF 12:51.271: 0: <--- R 26  [{"Addr":4194304,"Size":4096,"Flags":5,"FileName":"/home/fredl/projects/talos/workspace/x86-64-linux2/myloop/Debug/myloop","Offs":0},{"Addr":6291456,"Size":4096,"Flags":1,"FileName":"/home/fredl/projects/talos/workspace/x86-64-linux2/myloop/Debug/myloop","Offs":0},{"Addr":6295552,"Size":4096,"Flags":3,"FileName":"/home/fredl/projects/talos/workspace/x86-64-linux2/myloop/Debug/myloop","Offs":4096},{"Addr":140252184297472,"Size":1613824,"Flags":5,"FileName":"/lib/x86_64-linux-gnu/libc-2.13.so","Offs":0},{"Addr":140252185911296,"Size":2093056,"Flags":0,"FileName":"/lib/x86_64-linux-gnu/libc-2.13.so","Offs":1613824},{"Addr":140252188004352,"Size":16384,"Flags":1,"FileName":"/lib/x86_64-linux-gnu/libc-2.13.so","Offs":1609728},{"Addr":140252188020736,"Size":4096,"Flags":3,"FileName":"/lib/x86_64-linux-gnu/libc-2.13.so","Offs":1626112},{"Addr":140252188024832,"Size":24576,"Flags":3,"FileName":"/lib/x86_64-linux-gnu/libc-2.13.so","Offs":1630208,"BSS":true},{"Addr":140252188049408,"Size":135168,"Flags":5,
TCF 12:51.282: 0: ---> C 27 Symbols findFrameInfo "P3807" 4194304 <eom>
TCF 12:51.282: 0: <--- R 27  0 0 null null <eom>
TCF 12:51.286: 0: ---> C 28 Symbols findFrameInfo "P3807" 6291456 <eom>
TCF 12:51.286: 0: <--- R 28  0 0 null null <eom>
TCF 12:51.290: 0: ---> C 29 Symbols findFrameInfo "P3807" 6295552 <eom>
TCF 12:51.290: 0: <--- R 29  0 0 null null <eom>
TCF 12:51.294: 0: ---> C 30 Symbols findFrameInfo "P3807" 140252184297472 <eom>
TCF 12:51.295: 0: <--- R 30  0 0 null null <eom>
TCF 12:51.298: 0: ---> C 31 Symbols findFrameInfo "P3807" 140252185911296 <eom>
TCF 12:51.299: 0: <--- R 31  0 0 null null <eom>
TCF 12:51.302: 0: ---> C 32 Symbols findFrameInfo "P3807" 140252188004352 <eom>
TCF 12:51.302: 0: <--- R 32  0 0 null null <eom>
TCF 12:51.306: 0: ---> C 33 Symbols findFrameInfo "P3807" 140252188020736 <eom>

The last command never returns ...

From my point of view, even if the address is bad or should not be used, the agent should not exit ...

Reproducible: Always

Steps to Reproduce:
1.Start a new process with the processes service
2.When the first container suspended event is received, get the current memory map
3.For each of the addresses of the memory map, try to get the fram infos
Comment 1 Eugene Tarassov CLA 2011-11-15 12:01:58 EST
That assert is incorrect and it is already removed in the latest code. What version of the code are you using?
Comment 2 Frederic Leger CLA 2011-11-15 12:05:12 EST
Eugene, we are based on 0.5.0 for Talos development
Comment 3 Frederic Leger CLA 2011-11-15 12:05:45 EST
(In reply to comment #1)
> That assert is incorrect and it is already removed in the latest code. What
> version of the code are you using?

Eugene, we are based on 0.5.0 for Talos development
Comment 4 Eugene Tarassov CLA 2011-11-15 13:10:31 EST
I have back-ported the fix into 0.5.0 branch.