GNU bug report logs - #8938
make timeout and CTRL-C

Previous Next

Package: coreutils;

Reported by: shay shimony <shayshim <at> gmail.com>

Date: Sun, 26 Jun 2011 21:48:01 UTC

Severity: normal

Fixed in version 8.13

Done: Pádraig Brady <P <at> draigBrady.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Pádraig Brady <P <at> draigBrady.com>
To: Alan Curry <pacman-cu <at> kosh.dhis.org>
Cc: 8938 <at> debbugs.gnu.org
Subject: bug#8938: make timeout and CTRL-C
Date: Wed, 29 Jun 2011 10:55:27 +0100
On 28/06/11 20:10, Alan Curry wrote:
> =?ISO-8859-1?Q?P=E1draig_Brady?= writes:
>>
>> I'm still not convinced we need to be messing with tcsetpgrp()
>> but you're right in that the disconnect between the timeout
>> process group and that of whatever starts `timeout` should be bridged.
>>
>> I'm testing the attached patch at the moment (which I'll split into 2).
>> It only creates a separate group for the child that `timeout` execs,
>> leaving the timeout process in the original group to propagate signals down.
>>
>> I'll need to do lots of testing with this before I commit.
> 
> With this patch the child is guaranteed to not be in the foreground (as far
> as the tty knows) so it will be getting SIGTTIN and possibly SIGTTOU on tty
> operations.

Oh right. This will immediately put dd in sTop state:
  timeout 10 dd
That was one of the main reasons I didn't split the groups
in the first place. I should read my own comments :)
I'm very wary of changing the foreground group (with tcsetpgrp),
which would fix this, but in turn may cause other issues.

> I don't think there's anything that will make every scenario happy. (Except
> for a recursive-kill that doesn't use pgrps!).

Yes, an ideal solution is elusive.
Maybe `make` needs to handle things differently?
If you put the following in a Makefile, how should make respond to Ctrl-C?

all:
	setsid sleep 10

cheers,
Pádraig.




This bug report was last modified 14 years and 25 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.