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 <>
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 
 line 174.
      (gdb) r
      Starting program: 

      [1]+  Stopped                 ../gdb 
      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 


            * event-top.c: Remove include comment.
            * inflow.c (class scoped_ignore_sigttou): Move from here...
            * inflow.h (class scoped_ignore_sigttou): 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 -r1.1.1.8 -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 \
cvs rdiff -u -r1.1.1.7 -r1.2 src/external/gpl3/gdb/dist/gdb/inflow.c \

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Reply via email to