14.02.2019. 19.27, "Sandra Loosemore" <san...@codesourcery.com> је написао/ла: > > On 2/14/19 10:48 AM, Peter Maydell wrote: >> >> On Tue, 12 Feb 2019 at 21:52, Sandra Loosemore <san...@codesourcery.com> wrote: >>> >>> >>> Per the GDB remote protocol documentation >>> >>> https://sourceware.org/gdb/current/onlinedocs/gdb/Packets.html#index-vKill-packet >>> >>> the debug stub is expected to send a reply to the 'vKill' packet. At >>> least some versions of GDB crash if the gdb stub simply exits without >>> sending a reply. This patch fixes QEMU's gdb stub to conform to the >>> expected behavior. >>> >>> Note that QEMU's existing handling of the legacy 'k' packet is >>> correct: in that case GDB does not expect a reply, and QEMU does not >>> send one. >>> >>> Signed-off-by: Sandra Loosemore <san...@codesourcery.com> >> >> >> Thanks, applied to target-arm.next. >> >> As an aside, do you know if there is any kind of test suite for >> the remote protocol that implementors of a debug stub can use to >> check that they're conforming to it? > > > Well, I discovered this problem by running the GDB testsuite (using QEMU for nios2-elf target with the other target-specific patches I recently posted). I'm not sure if it's designed to exhaustively test the entire remote protocol, but it does a pretty good job of covering user-visible GDB features that depend on the remote target doing something reasonable, even if it's just saying "Huh? I don't know how to do that." :-) >
Debugging using gdb/qemu setups is fairly frequent use case and perhaps we should have a test module for interoperability of gdb and qemu, and also "make check-gdb". Thanks for pinpointing and fixing bugs in this area, Sandra! Aleksandar > -Sandra >