This is the mail archive of the 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]

[patch 0/8] Download tracepoint locations when tracing is running

Current gdb/gdbserver only allows to download tracepoint before tracing
is started.  This patch set is about to teach gdb/gdbserver to be able
to download tracepoint locations even when tracing is run.  This feature
is quite useful to 1) adding new tracepoints after `tstart', 2) pending
tracepoints can be downloaded/installed in tracing (after this patch set
is applied, pending tracepoint works without much effort).

In order to achieve this feature, there are several points we should
  #1 gdb should know whether remote stub supports this feature, so we
need a new qSupported feature "InstallInTrace" for this.  This is done
by patch 2/8.
  #2 gdb should be able to download tracepoint locations when they are
changed, and keep track of their 'status'.  This is done by patch 3/8.
  #3 gdbserver should be able to install tracepoint locations when
received from gdb.  This is done by patch 6/8 (patch 5/8 is a refactor
to gdbserver to prepare for 6/8).
  #4 remote stub may not always be able to receive tracepoint details,
and gdb has to download tracepoints when remote stub is ready.  This is
done by patch 3/8.

Patch 2/8 and 3/8 should be part of patch 4/8, but I split them to make
review more clear.  This patch set will be applied as a whole once it is

Patch 8/8 is about test cases.  Regression tested on x86-linux and
x86_64-linux.  All new added test cases pass on x86-linux, and two
kfails on x86_64-linux.  These two kfails are existing problem exposed
by new test cases.  I'll explain it in details in patch 8/8.

Yao (éå)

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