Community
Participate
Working Groups
As title says :) Environment: Ubuntu 16.04 Xenial Xurus I have a trace that I got from an ARM device, I imported all the libraries from the target and the debuginfo resolution is working properly in the "trace" events list, while the callstack view is not showing human readable names for most of the functions.
I should have been clearer. Callstack is showing the function addresses while the trace view is showing the demangled function name
Created attachment 262731 [details] callstack view showing function addresses, trace view showing readable function name
The trace is question is located here http://bernabei.me/auto-20160627-164106.tar.gz
New Gerrit change created: https://git.eclipse.org/r/76060
I was able to reproduce the problem, and also the bug that was also mentioned that upon re-opening the trace it would throw NegativeArraySize exceptions. After some investigation it turns out there is a problem regarding string length limits in the state system. There is an implicit limit of 127 bytes for each encoded string, but it is never actually checked or enforced. The trace in question had a file system path for example that made exactly 128 bytes! In the patch I attached the limit is raised to 2^15 bytes instead, which should allow for most reasonable use cases, and it should now correctly report an error if an analysis tries to store strings over that size.
I verified that the proposed change fixes the bug! \o/ Thank you so much people! What a quick fix! :) PS I have just removed the trace from my server, so you won't be able to access it anymore. Let me know if you need it again :)
Gerrit change https://git.eclipse.org/r/76060 was merged to [master]. Commit: http://git.eclipse.org/c/tracecompass/org.eclipse.tracecompass.git/commit/?id=8182f36f96bbe3f33cc4c4838853239d2efe315a
Patch was merged to master. Thanks for testing it!
I think I'm still seeing this problem in my traces, although it does not always happen :/
Which problem are you still seeing? The NegativeArraySize exception? The names being shown in the table but not in the view? Both?
the latter
As in, some function names are shown in the callstack view, some are not. I fix that by closing and reopening the trace until it works
> I fix that by closing and reopening the trace until it works Hmm, ok, so the information really does exist, it's just not shown sometimes. Have you tried scrolling around in the view and the table and see if that ends up displaying the names? Mind you, that would still be a bug ;) but we could see if it's a refresh bug, or if it's the trace that gets stuck in a weird state. Could you share a screenshot of the problem happening? Also a tip, if you use my "staging/next" branch, you can use the Properties view, with a trace event selected, to show the full Binary Location, Source Location, etc. paths more easily.