All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v3 0/2] Qemu: gdbstub: fix vCont
@ 2016-10-28 17:15 Claudio Imbrenda
  2016-10-28 17:15 ` [Qemu-devel] [PATCH v3 1/2] move vm_start to cpus.c Claudio Imbrenda
                   ` (3 more replies)
  0 siblings, 4 replies; 12+ messages in thread
From: Claudio Imbrenda @ 2016-10-28 17:15 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, borntraeger, palves

This small patchset fixes the incorrect behaviour of the vCont command
in the gdb stub. 

The first patch, as suggested be Paolo, refactors some code. The most
visible change is that it moves vm_start to cpus.c 

The second one fixes the incorrect behaviour of the vCont command.
Previously, continuing or stepping a single thread (CPU) caused all
other CPUs to be started too, whereas the GDB specification clearly
states that without a default action all threads not explicitly
mentioned in the command should stay stopped.

So if the Qemu gdbstub receives a  vCont;c:1  packet, no other CPU
should be restarted except the first, and when a  vCont;s:1  is
received, the first CPU should be stepped without restarting the others.
With this patchset Qemu now behaves as expected.

See here for reference material about the packets: 
https://sourceware.org/gdb/current/onlinedocs/gdb/Packets.html
https://sourceware.org/gdb/onlinedocs/gdb/Packets.html

v2 -> v3
* removed resume_some_vcpus
* cleared up the code and simplified the implementation in light of the 
  clarification in the specification of the vCont packet

Claudio Imbrenda (2):
  move vm_start to cpus.c
  gdbstub: Fix vCont behaviour

 cpus.c                     |  44 ++++++++++-
 gdbstub.c                  | 189 ++++++++++++++++++++++++++++++++++-----------
 hw/i386/kvmvapic.c         |   2 +
 include/sysemu/cpus.h      |   1 +
 include/sysemu/sysemu.h    |   2 +
 target-s390x/misc_helper.c |   2 +
 vl.c                       |  32 +-------
 7 files changed, 195 insertions(+), 77 deletions(-)

-- 
1.9.1

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2017-01-25 18:02 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-10-28 17:15 [Qemu-devel] [PATCH v3 0/2] Qemu: gdbstub: fix vCont Claudio Imbrenda
2016-10-28 17:15 ` [Qemu-devel] [PATCH v3 1/2] move vm_start to cpus.c Claudio Imbrenda
2017-01-25 10:21   ` Paolo Bonzini
2017-01-25 17:53     ` Claudio Imbrenda
2017-01-25 18:02       ` Paolo Bonzini
2016-10-28 17:15 ` [Qemu-devel] [PATCH v3 2/2] gdbstub: Fix vCont behaviour Claudio Imbrenda
2017-01-25 10:34   ` Paolo Bonzini
2017-01-25 17:55     ` Claudio Imbrenda
2016-11-30 15:37 ` [Qemu-devel] [PATCH v3 0/2] Qemu: gdbstub: fix vCont Claudio Imbrenda
2017-01-12 16:45 ` Claudio Imbrenda
2017-01-25 10:05   ` Christian Borntraeger
2017-01-25 10:12     ` Paolo Bonzini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.