Module Name: src Committed By: kamil Date: Fri Sep 6 14:37:00 UTC 2019
Modified Files: src/external/gpl3/gdb/dist/gdb: ChangeLog event-top.c inflow.c inflow.h ser-unix.c top.c Log Message: Cherry-pick upstream GDB patch to fix SIGTTOU handling Fixes toolchain/54508 by Tobias Ulmer commit 766f883622ef008230250aa5aecef9fb9b29f233 Author: Alan Hayward <alan.hayw...@arm.com> Date: Tue May 28 10:07:54 2019 +0100 Suppress SIGTTOU when handling errors Calls to error () can cause SIGTTOU to send gdb to the background. For example, on an Arm build: (gdb) b main Breakpoint 1 at 0x10774: file /build/gdb/testsuite/../../../src/binutils-gdb/gdb/testsuite/gdb.base/watchpoint.c, line 174. (gdb) r Starting program: /build/gdb/testsuite/outputs/gdb.base/watchpoint/watchpoint + Stopped ../gdb ./outputs/gdb.base/watchpoint/watchpoint localhost$ fg ../gdb ./outputs/gdb.base/watchpoint/watchpoint Cannot parse expression `.L1199 4@r4'. warning: Probes-based dynamic linker interface failed. Reverting to original interface. The SIGTTOU is raised whilst inside a syscall during the call to tcdrain. Fix is to use scoped_ignore_sigttou to ensure SIGTTOU is blocked. In addition fix include comments - job_control is not included via terminal.h gdb/ChangeLog: * event-top.c: Remove include comment. * inflow.c (class scoped_ignore_sigttou): Move from here... * inflow.h (class scoped_ignore_sigttou): ...to here. * ser-unix.c (hardwire_drain_output): Block SIGTTOU during drain. * top.c: Remove include comment. To generate a diff of this commit: cvs rdiff -u -r184.108.40.206 -r1.2 src/external/gpl3/gdb/dist/gdb/ChangeLog \ src/external/gpl3/gdb/dist/gdb/event-top.c \ src/external/gpl3/gdb/dist/gdb/ser-unix.c \ src/external/gpl3/gdb/dist/gdb/top.c cvs rdiff -u -r220.127.116.11 -r1.2 src/external/gpl3/gdb/dist/gdb/inflow.c \ src/external/gpl3/gdb/dist/gdb/inflow.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.