[Lldb-commits] [PATCH] D89315: [debugserver] Add option to propagate SIGSEGV to target process

Alessandro Arzilli via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Tue Oct 13 06:41:57 PDT 2020


aarzilli created this revision.
aarzilli added reviewers: clayborg, jasonmolenda.
Herald added a project: LLDB.
Herald added a subscriber: lldb-commits.
aarzilli requested review of this revision.
Herald added a subscriber: JDevlieghere.

Adds a command line option that makes debugserver propagate the SIGSEGV signal to the target process.

Motivation: I'm one of the maintainers of Delve [1] a debugger for Go. We
use debugserver as our backend on macOS and one of the most often reported
bugs is that, on macOS, we don't propagate SIGSEGV back to the target
process [2]. Sometimes some programs will actually cause a SIGSEGV, by
design, and then handle it. Those programs can not be debugged at all.

Since catching signals isn't very important for a Go debugger I'd much
rather have a command line option in debugserver that causes it to let
SIGSEGV go directly to the target process.

[1] https://github.com/go-delve/delve/
[2] https://github.com/go-delve/delve/issues/852


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D89315

Files:
  lldb/tools/debugserver/source/DNB.cpp
  lldb/tools/debugserver/source/DNB.h
  lldb/tools/debugserver/source/MacOSX/MachProcess.h
  lldb/tools/debugserver/source/MacOSX/MachProcess.mm
  lldb/tools/debugserver/source/MacOSX/MachTask.h
  lldb/tools/debugserver/source/MacOSX/MachTask.mm
  lldb/tools/debugserver/source/RNBRemote.cpp
  lldb/tools/debugserver/source/debugserver.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D89315.297844.patch
Type: text/x-patch
Size: 20624 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20201013/02c11063/attachment-0001.bin>


More information about the lldb-commits mailing list