[Lldb-commits] [PATCH] D128710: [lldb] [llgs] Fix multi-resume bugs with nonstop mode

Michał Górny via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Jun 28 01:29:35 PDT 2022


mgorny created this revision.
mgorny added reviewers: labath, krytarowski, jingham, emaste.
Herald added a subscriber: arichardson.
Herald added a project: All.
mgorny requested review of this revision.

Improve handling of multiple successive continue packets in non-stop
mode.  More specifically:

1. Explicitly send error response (instead of crashing on assertion) if the user attempts to resume the same process twice.  Since we do not support thread-level non-stop mode, one needs to always stop the process explicitly before resuming another thread set.

2. Actually stop the process if "vCont;t" is delivered to a running process.  Similarly, we only support stopping all the running threads simultaneously and return an error if the action would result in a subset of threads still running.

With this patch, running multiple processes simultaneously is still
unsupported.  The patch also employs a hack to avoid enabling stdio
forwarding on "vCont;t" packet.  Both of these issues will be addressed
by followup patches.

Sponsored by: The FreeBSD Foundation


https://reviews.llvm.org/D128710

Files:
  lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
  lldb/test/API/tools/lldb-server/TestNonStop.py

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D128710.440523.patch
Type: text/x-patch
Size: 10719 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20220628/f1c50ea8/attachment-0001.bin>


More information about the lldb-commits mailing list