Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* [PATCH 0/2] Create inferior fro trace file target
@ 2014-01-30  5:46 Yao Qi
  2014-01-30  5:46 ` [PATCH 1/2] Create inferior for tfile target Yao Qi
                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: Yao Qi @ 2014-01-30  5:46 UTC (permalink / raw)
  To: gdb-patches; +Cc: marc.khouzam

Marc reported that Eclipse is unable to load trace file with GDB 7.7,
but it works with GDB 7.6. https://sourceware.org/ml/gdb/2014-01/msg00031.html
This change is caused by my patch:

  [RFC] Don't create inferior in tfile target.
  https://sourceware.org/ml/gdb-patches/2013-05/msg00068.html

because I didn't think inferior should be created when a tracefile is
loaded.

On 01/30/2014 04:56 AM, Marc Khouzam wrote:
> The trace file processing is based on the core file one, which shows
> the execution tree after the core file is loaded.
> But reading your mail makes me think that it makes sense that
> when loading a trace file there would be no inferior or thread yet.
> However, when selecting a trace record, then we would need
> to see the inferior and thread.  This is not the case with 7.7.

I don't know why trace file processing is based on the core file.  They
are different, IMO.

> 
> To me, trace records are like a limited core file:
> a snapshot of a specific point of the execution.  So, when looking
> at a trace record, just like when looking at a core file, we want
> to show the execution hierarchy, i.e., the process and thread
> where the record was collected.

The corefile has information about thread and process, but trace file
doesn't.  Thread and process is not mentioned in the "Trace File Format"
doc https://sourceware.org/gdb/current/onlinedocs/gdb/Trace-File-Format.html

Keeping trace file similar to core file is unspecified, and their code
are total independent to each other.  It is not good for Eclipse to
assume that, unless we can extend trace file format to include the
process id and the thread id in each trace frame.

Anyway, it is not a good time to discuss about trace file format and
how Eclipse should handle trace file.  Let me focus on this problem
and patches at first :).

Reverting my patch works, which is included in patch 1/2.
In patch 2/2, I add something similar to ctf target, and a test case.
Patches are regression tested on x86_64-linux.  They are also tested
on x86-linux with babeltrace installed.

In short, Eclipse replies on an undocumented GDB behavior, that GDB
should provide inferior and thread when reading a trace file while  I
don't think GDB has to.  If global maintainers think GDB 7.7 shouldn't
break Eclipse, then we should pick these two patches up.

These two patches bring an issue for multi-target support, say if GDB
opens two trace files in two targets, what is the expected output of
"info inferiors" and "info threads"?

*** BLURB HERE ***

Yao Qi (2):
  Create inferior for tfile target
  Create inferior for ctf target.

 gdb/ctf.c                          |   24 ++++++++++++++++++++++++
 gdb/testsuite/gdb.trace/report.exp |    7 ++++++-
 gdb/testsuite/gdb.trace/tfile.exp  |    3 ---
 gdb/tracepoint.c                   |   19 +++++++++++++++++++
 4 files changed, 49 insertions(+), 4 deletions(-)

-- 
1.7.7.6


^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2014-02-05 12:54 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-30  5:46 [PATCH 0/2] Create inferior fro trace file target Yao Qi
2014-01-30  5:46 ` [PATCH 1/2] Create inferior for tfile target Yao Qi
2014-01-30  5:47 ` [PATCH 2/2] Create inferior for ctf target Yao Qi
2014-01-30 19:21 ` [PATCH 0/2] Create inferior fro trace file target Marc Khouzam
2014-02-05 12:54   ` Yao Qi
2014-02-04 20:57 ` Pedro Alves
2014-02-04 21:08   ` Marc Khouzam
2014-02-04 21:17     ` Pedro Alves
2014-02-05  2:05   ` Joel Brobecker
2014-02-05 12:17   ` Yao Qi
2014-02-05 12:24     ` Joel Brobecker
2014-02-05 12:31     ` Pedro Alves
2014-02-05 12:42     ` Mark Kettenis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox