This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [PATCH 00/11] btrace: Turn linked list of function call segments into vector


> -----Original Message-----
> From: Wiederhake, Tim
> Sent: Friday, February 17, 2017 2:26 PM
> To: gdb-patches@sourceware.org
> Cc: Metzger, Markus T <markus.t.metzger@intel.com>
> Subject: [PATCH 00/11] btrace: Turn linked list of function call segments into
> vector

Hello Tim,

Thanks for your patches.  This makes the trace representation a lot more compact.


> this series removes the extra list of btrace function call segments in struct
> btrace_thread_info.  To achieve this, the doubly linked list of function call
> segments in struct btrace_thread_info is replaced by a (GDB) vector.  In some
> instances, struct btrace_thread_info is initialized by memset'ing it to 0x00,
> so we can't use std::vector (yet).

Feel free to submit further patches to fix that;-)


> Patch 6 to 11 is actually only one patch that is split up for easier review.
> As we push more function call segments in the vector when we decode the trace,
> the vector may run out of space and reallocate, rendering all pointers invalid
> and preventing incremental change from pointer usage to index usage.

Those smaller patches are indeed much easier to review.  I'm wondering if we could
keep the smaller patches.  They're nice as future reference and they would make a
bisect easier, as well.

We can't afford to temporarily resize the vector, though.  But if we could get rid of
the function segment pointers earlier in the series and replace them with function
numbers, this may not be necessary.  See a few more comments in this direction in
replies to individual patches.

Thanks,
Markus.

Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de
Managing Directors: Christin Eisenschmid, Christian Lamprechter
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]