Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 30 Mar 2000 01:59:59 -0800
From:      Don Lewis <Don.Lewis@tsc.tdk.com>
To:        Archie Cobbs <archie@whistle.com>, Don.Lewis@tsc.tdk.com (Don Lewis)
Cc:        bright@wintelcom.net (Alfred Perlstein), freebsd-current@FreeBSD.ORG
Subject:   Re: kern/8324
Message-ID:  <200003300959.BAA01712@salsa.gv.tsc.tdk.com>
In-Reply-To: <200003201900.LAA05709@bubba.whistle.com>
References:   <200003201900.LAA05709@bubba.whistle.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mar 20, 11:00am, Archie Cobbs wrote:
} Subject: Re: kern/8324
} Don Lewis writes:

} > This patch (vs the 3.4-STABLE version of tty.c) causes SIGIO to be
} > sent when a regular or pseudo tty becomes writeable.
} > 
} > 
} > --- tty.c.orig	Sun Aug 29 09:26:09 1999
} > +++ tty.c	Sat Mar 18 03:09:32 2000
} > @@ -2133,6 +2133,8 @@
} >  
} >  	if (tp->t_wsel.si_pid != 0 && tp->t_outq.c_cc <= tp->t_olowat)
} >  		selwakeup(&tp->t_wsel);
} > +	if (ISSET(tp->t_state, TS_ASYNC) && tp->t_sigio != NULL)
} > +		pgsigio(tp->t_sigio, SIGIO, (tp->t_session != NULL));
} >  	if (ISSET(tp->t_state, TS_BUSY | TS_SO_OCOMPLETE) ==
} >  	    TS_SO_OCOMPLETE && tp->t_outq.c_cc == 0) {
} >  		CLR(tp->t_state, TS_SO_OCOMPLETE);
} > 
} > 
} > BTW, I had to add:
} > 	fcntl(1, F_SETOWN, getpid());
} > to the test program since there is no longer a default target to send
} > the signal to.  The old scheme had the defect of sending SIGIO to the
} > process group that owned the terminal, which implied that the terminal
} > had to be the controlling terminal for the process group.  This limited
} > a process to only receiving SIGIO from one terminal device even if it
} > had more than one open and it wanted to receive SIGIO from all of them.
} > Also, SIGIO was sent to the entire process group, but it may be desireable
} > to limit this to one process.  I wonder if it might make sense to go
} > back to the old default for tty devices so that processes only receive
} > SIGIO when they are in the foreground ...
} 
} Don-
} 
} After applying your patch to kern/tty.c and adding the F_SETOWN,
} the problem indeed seems to go away..
} 
} Is this patch ready to be committed, or do we need more reviewers?

Sorry for the delay, I was out of town most of last week and sick most
of this week.

It's probably safe to commit to -current if someone can give it a quick
test there.  Unfortunately I don't have a box running -current to test
it on.

Now, on to some more of my 6280 unread email messages :-(



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200003300959.BAA01712>