diff options
author | Conrad Meyer <cem@FreeBSD.org> | 2019-08-19 00:02:19 -0700 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2019-08-20 15:06:37 +0100 |
commit | aedbe3bb9f03be12ad714adca1fefc391317bd94 (patch) | |
tree | 577892888ccb5462341d72bc9056f6c46edbe16f /ld | |
parent | ac533243beac35f158341d53edab53031218bcde (diff) | |
download | gdb-aedbe3bb9f03be12ad714adca1fefc391317bd94.zip gdb-aedbe3bb9f03be12ad714adca1fefc391317bd94.tar.gz gdb-aedbe3bb9f03be12ad714adca1fefc391317bd94.tar.bz2 |
Improve remote attach round-trips without btrace
For remotes which do not support btrace at all, we can save several
round trips for each thread. This is especially significant when your
remote is a kernel with 100s or 1000s of threads and latency is
intercontinental.
Previously, with target, remote, and infrun debugging enabled, one
might see:
Sending packet: $Hg18aee#43...Ack
Packet received: OK
Sending packet: $Hg186f7#eb...Ack
Packet received: OK
remote:target_xfer_partial (24, , 0x805454000, 0x0, 0x0, 4096) = -1, 0
repeated for all non-exited threads.
Afterwards, if the remote does not specify 'qXfer:btrace-conf:read+'
in qSupported stub features, these unnecessary thread switches are
avoided.
gdb/ChangeLog:
* remote.c (remote_target::remote_btrace_maybe_reopen): Avoid
unnecessary thread walk if remote doesn't support the packet.
Diffstat (limited to 'ld')
0 files changed, 0 insertions, 0 deletions