Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Jim Blandy <jimb@codesourcery.com>
To: Andreas Schwab <schwab@suse.de>
Cc: Alain Magloire <alain@qnx.com>,  gdb@sources.redhat.com
Subject: Re: invoking GDB from FE and signals
Date: Thu, 18 May 2006 23:28:00 -0000	[thread overview]
Message-ID: <vt2ac9fj682.fsf@theseus.home.> (raw)
In-Reply-To: <jebqtvovg2.fsf@sykes.suse.de> (Andreas Schwab's message of "Thu, 18 May 2006 23:49:01 +0200")


Andreas Schwab <schwab@suse.de> writes:
> Bob Rossi <bob_rossi@cox.net> writes:
>
>> I find in emacs:process.c code that they send the SIGINT in different
>> ways
>>     /* If possible, send signals to the entire pgrp
>>        by sending an input character to it.  */
>>
>>     /* TERMIOS is the latest and bestest, and seems most likely to
>>        work.  If the system has it, use it.  */
>>     case SIGINT:
>>       sig_char = &t.c_cc[VINTR];
>>       break;
>>     ...
>>     send_process (proc, sig_char, 1, Qnil);
>
> This part is only active if SIGNALS_VIA_CHARACTERS is defined.  That is
> defined mostly for BSD-derived systems, but not, for example, for Linux.
> The fallback is to send the signal to the foreground process group of the
> terminal.

Do you know why they prefer that approach on Linux?  There are race
conditions doing it either way, but the SIGNALS_VIA_CHARACTERS one
seems less likely:

- If SIGNALS_VIA_CHARACTERS is #defined, then we get the tty's "intr"
  character and send that.  The race is that the child could change
  its "intr" character between the time we fetch it and the time the
  tty processes the one we've sent.

- Otherwise, we get the tty's controlling process group with
  tcgetpgrp, and then use killpg to send that process group the signal
  we want.  The race is that the child could change its process group
  between the time we fetch it and the time we send it.

A shell changes the terminal's process group every time it runs a
command.


  parent reply	other threads:[~2006-05-18 22:52 UTC|newest]

Thread overview: 55+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-05-18 16:27 Alain Magloire
2006-05-18 16:55 ` Bob Rossi
2006-05-18 16:59 ` Andreas Schwab
     [not found] ` <vt2bqtvl157.fsf@theseus.home.>
2006-05-18 17:44   ` Bob Rossi
2006-05-18 21:56     ` Jim Blandy
2006-05-19  1:19       ` Bob Rossi
2006-05-19  3:00         ` Daniel Jacobowitz
2006-05-19 12:49           ` Bob Rossi
2006-05-19 15:37             ` Daniel Jacobowitz
2006-05-19 15:56               ` Bob Rossi
2006-05-19 17:55                 ` Jim Blandy
2006-05-19 19:22                   ` Bob Rossi
2006-05-23  3:46                     ` Jim Blandy
2006-05-18 22:51     ` Andreas Schwab
2006-05-18 23:25       ` Bob Rossi
2006-05-19  1:17         ` Andreas Schwab
2006-05-18 23:28       ` Jim Blandy [this message]
2006-05-19  0:59         ` Andreas Schwab
  -- strict thread matches above, loose matches on Subject: below --
2006-05-13 15:09 Bob Rossi
2006-05-13 15:11 ` Daniel Jacobowitz
2006-05-13 15:19   ` Bob Rossi
2006-05-13 15:48     ` Daniel Jacobowitz
2006-05-13 15:49       ` Bob Rossi
2006-05-13 17:11         ` Daniel Jacobowitz
2006-05-14  3:25           ` Bob Rossi
2006-05-14  4:17             ` Nick Roberts
2006-05-14  4:18               ` Eli Zaretskii
2006-05-14  5:01               ` Daniel Jacobowitz
2006-05-15  6:55                 ` Nick Roberts
2006-05-15 13:35                   ` Daniel Jacobowitz
2006-05-15 13:39                 ` Bob Rossi
2006-05-15 15:04                   ` Daniel Jacobowitz
2006-05-15 19:04                   ` Jim Blandy
2006-05-15 13:37             ` Jim Blandy
2006-05-15 14:58               ` Bob Rossi
2006-05-15 18:50                 ` Jim Blandy
2006-05-15 20:09               ` Bob Rossi
2006-05-15 18:42           ` PAUL GILLIAM
2006-05-15 19:18             ` Bob Rossi
2006-05-15 19:43               ` Daniel Jacobowitz
2006-05-15 20:05                 ` Bob Rossi
2006-05-15 20:09                   ` Daniel Jacobowitz
2006-05-15 20:20                     ` Bob Rossi
2006-05-15 21:02                       ` Daniel Jacobowitz
2006-05-15 21:08                         ` Bob Rossi
2006-05-15 21:31                           ` Daniel Jacobowitz
2006-05-15 21:33                             ` Bob Rossi
2006-05-15 20:11                   ` PAUL GILLIAM
2006-05-15 20:33                     ` Bob Rossi
2006-05-15 21:52                       ` Joel Brobecker
2006-05-15 22:40                     ` Bob Rossi
2006-05-16  3:32                       ` Nick Roberts
2006-05-18  1:40                     ` Bob Rossi
2006-05-18 12:32                       ` Jim Blandy
2006-05-18  7:28       ` Bob Rossi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=vt2ac9fj682.fsf@theseus.home. \
    --to=jimb@codesourcery.com \
    --cc=alain@qnx.com \
    --cc=gdb@sources.redhat.com \
    --cc=schwab@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox