aboutsummaryrefslogtreecommitdiff
path: root/gdb/NEWS
diff options
context:
space:
mode:
authorPedro Alves <pedro@palves.net>2021-06-03 19:39:19 +0100
committerPedro Alves <pedro@palves.net>2021-06-14 22:20:45 +0100
commit4e18fe9cb3f0cbd0dc517e4d6fde9a452ffba6fb (patch)
tree38a340d9d95091788b098f18fb65bc4db9360a6d /gdb/NEWS
parent814fb49ba384390e03e21a66b810b353369b18cb (diff)
downloadbinutils-users/palves/ctrl-c.zip
binutils-users/palves/ctrl-c.tar.gz
binutils-users/palves/ctrl-c.tar.bz2
Document pseudo-terminal and interrupting changesusers/palves/ctrl-c
This documents changes done in previous patches: - the fact that on GNU/Linux, GDB creates a pseudo-terminal for the inferior instead of juggling terminal settings. - That when the inferior and GDB share the terminal, you can't interrupt some programs with Ctrl-C. - That on GNU/Linux, you may get "Program stopped." instead of "Program received SIGINT" in response to Ctrl-C. - That run+detach may result in the program dying with SIGHUP. I was surprised that we do not currently have a node/section specifically to talk about interrupting programs. Thus I've added a new "Interrupting" section under the "Stopping and Continuing" chapter, with some xrefs to other sections. gdb/ChangeLog: yyyy-mm-dd Pedro Alves <pedro@palves.net> * NEWS: Document pseudo-terminal, "tty /dev/tty" and Ctrl-C/SIGINT changes. Document "set/show debug managed-tty". gdb/doc/ChangeLog: yyyy-mm-dd Pedro Alves <pedro@palves.net> * gdb.texinfo (Input/Output): Document that GDB may start a program associated with a pseudo-terminal. Document "tty /dev/tty". Document "set/show debug managed-tty". (Attach): Document what happens on run+detach on systems where GDB creates a pseudo-terminal for the inferior. (Stopping and Continuing): Add new Interrupting node. (Background Execution): Add anchor. (Features for Debugging MS Windows PE Executables): Add anchor. Change-Id: I267a0f9300c7ac4d2e7f14a9ba8eabc1eafcc5a7
Diffstat (limited to 'gdb/NEWS')
-rw-r--r--gdb/NEWS23
1 files changed, 23 insertions, 0 deletions
diff --git a/gdb/NEWS b/gdb/NEWS
index 56743fc..90361d3 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -6,6 +6,25 @@
* The 'set disassembler-options' command now supports specifying options
for the ARC target.
+* On GNU/Linux, by default GDB now starts programs associated with a
+ pseudo-terminal slave device created and managed by GDB, instead of
+ having the inferior use the same terminal as GDB directly. GDB
+ takes care of forwarding input and output to and from GDB's terminal
+ at appropriate times, so this is largely transparent.
+
+ In addition, by default, Ctrl-C no longer stops the program with
+ SIGINT. Instead you'll see for example:
+
+ Thread 1 "main" stopped.
+
+ With these changes it is now possible to interrupt programs that
+ block or ignore the SIGINT signal (with e.g., the sigprocmask
+ function), or use the sigwait function to wait for SIGINT signal.
+
+ You can use the "tty /dev/tty" command to restore the previous
+ behavior of spawning programs associated with the same terminal as
+ GDB.
+
* GDB now supports general memory tagging functionality if the underlying
architecture supports the proper primitives and hooks. Currently this is
enabled only for AArch64 MTE.
@@ -84,6 +103,10 @@ set debug event-loop
show debug event-loop
Control the display of debug output about GDB's event loop.
+set debug managed-tty
+show debug managed-tty
+ Control the display of debug output about GDB-managed terminals.
+
set print memory-tag-violations
show print memory-tag-violations
Control whether to display additional information about memory tag violations