This is the mail archive of the
mailing list for the GDB project.
[patch 0/8] Download tracepoint locations when tracing is running
- From: Yao Qi <yao at codesourcery dot com>
- To: gdb-patches at sourceware dot org
- Date: Tue, 08 Nov 2011 13:59:45 +0800
- Subject: [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.