[Bug 775423] info: Add a 'full' parametter to gst_debug_get_stack_trace

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Wed Nov 30 19:48:43 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=775423

--- Comment #3 from Thibault Saunier <tsaunier at gnome.org> ---
(In reply to Tim-Philipp Müller from comment #2)
> Comment on attachment 341081 [details] [review]
> info: Add a 'full' parametter to gst_debug_get_stack_trace
> 
> Funny, when I saw the original addition I thought to myself 'maybe we should
> add a flags argument for future use' ;)
> 
> Maybe we should make this a flags arg or do we reckon that a simple bool
> will definitely be enough?

DONE, it is indeed a good idea, I think in the future we might want to also
allow retrieving back trace for all threads.

> I also wonder if it makes sense to add the option via another func for a
> 'blob of data' (e.g. array of pointers or whatever) to be retrieved as stack
> trace, and then another function to turn that into symbols/files/line
> numbers. The leak tracer for example should only really need to resolve the
> details when it prints the leak, not during normal operation.

I had also tried that but it depends a lot on what tool we use, with backtrace
for example it makes no sense. I tried with libunwind/libdw and keeping the
information around through a dwlf session means to keep a FD open per stack
trace and I was exceeding the limit of opened fds almost right away running the
leak tracer. We would need to retrieve the info, and put it in dedicated
structures (like struct {gint line_number, gchar *symbol_name, ...}) but I do
not see a good reason to do that as we would not avoid retrieving the info 'at
runtime' which is the expensive operation.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list