From: "karthikeyan.s" <informkarthik@gmail.com>
To: gdb@sourceware.org
Subject: gdbserver delayed packet event issue
Date: Thu, 11 Nov 2010 05:52:00 -0000 [thread overview]
Message-ID: <AANLkTikyi9Z0KPy15vGRoFNcY-g_hGtT+csLYrgFPh_H@mail.gmail.com> (raw)
Hi,
I am seeing an issue with the gdb remote debugging, this is gdb 7.1.50
version. I have marked the erroneous states with line --> below.
gdbserver sometimes gets a delayed event for the packet
QStartNoAckMode sent from the host. In the case pasted below gdbserver
gets two events clubbed together when the client has sent the second
"QStartNoAckMode" packet after its timeout. At this stage, gdbserver
ends up sending two "$OK" while the client is expecting only one and
the state gets messed up between client and server.
1) It seems that the client does not handle issues with the network.
Instead it assumes the packet is lost on a timeout.
2) Why doesn't gdbserver get an event on the first request itself. I
used writeshark on the client side to confirm the packet is being
sent. And tcpdump on the remote side to see that the packet does come
in at the target.
Any help is appreciated
Thanks,
Karthik
----------
getpkt ("qSupported"); [sending ack]
[sent ack]
putpkt ("$PacketSize=3fff;QPassSignals+;qXfer:libraries:read+;qXfer:auxv:read+;qXfer:spu:read+;qXfer:spu:write+;qXfer:siginfo:read+;qXfer:siginfo:write+;qXfer:features:read+;QStartNoAckMode+;qXfer:osdata:read+;multiprocess+;QNonStop+;qXfer:threads:read+#31");
[looking for ack]
[received '+' (0x2b)]
-->handling possible serial event
-->getpkt ("QStartNoAckMode"); [sending ack]
-->[sent ack]
-->[noack mode enabled]
-->putpkt ("$OK#9a"); [noack mode]
-->handling possible serial event
-->getpkt ("QStartNoAckMode"); [no ack sent]
-->[noack mode enabled]
-->putpkt ("$OK#9a"); [noack mode]
handling possible serial event
[getpkt: discarding char '+']
getpkt ("Hg0"); [no ack sent]
putpkt ("$OK#9a"); [noack mode]
handling possible serial event
getpkt ("qXfer:features:read:target.xml:0,fff"); [no ack sent]
putpkt ("$l<?xml version="1.0"?>
<!-- Copyright (C) 2009, 2010 Free Software Foundation, Inc.
*!Copying and distribution of this file, with or without modification,
*!are permitted in any medium without royalty provided the copyright
*!notice and this notice are preserved. -->
<!DOCTYPE target SYSTEM "gdb-target.dtd">
<target>
<xi:include href="arm-core.xml"/>
<xi:include href="arm-vfpv2.xml"/>
</target>
#44"); [noack mode]
handling possible serial event
readchar: Got EOF
[getpkt: discarding char 'ÿ']
-------
next reply other threads:[~2010-11-11 5:52 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-11 5:52 karthikeyan.s [this message]
2010-11-11 11:00 ` Pedro Alves
2010-11-11 11:58 ` karthikeyan.s
2010-11-11 12:16 ` Pedro Alves
2010-11-15 9:29 ` karthikeyan.s
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=AANLkTikyi9Z0KPy15vGRoFNcY-g_hGtT+csLYrgFPh_H@mail.gmail.com \
--to=informkarthik@gmail.com \
--cc=gdb@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox