🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

4 total messages Started by Ross Cartlidge Mon, 16 Dec 1985 02:01
sxt bug
#9
Author: Ross Cartlidge
Date: Mon, 16 Dec 1985 02:01
25 lines
1501 bytes
When using rn(1) on a sxt(7) device you will notice that
that characters are often discarded in the prompts. This
is because rn(1) uses the ioctl(2) call TCSETAF to throw away
type ahead between each question. The sxt driver, however, doesn't
support the BUSY bit in t_state. Thus as soon as the output queue
to the sxt device empties input and output is flushed (see ttiocom
and ttywait in io/tty.c). The flush of the sxt device, however,
is translated into a flush of the real device, which may still
be transmitting characters, thus these characters are lost.

FIX:
	Simply make the t_state bit BUSY reflect whether
	output is pending on the associated sxt channel.
	The following diff(1) applied to io/sxt.c implements
	this strategy.

747a748
> 		vtp->t_state |= BUSY;
798a800
> 		vtp->t_state &= ~BUSY;
873a876
> 				vtp->t_state &= ~BUSY;
940a944
> 			vtp->t_state &= ~BUSY;
Re: sxt bug
#12
Author: Joseph S. D. Yao
Date: Wed, 25 Dec 1985 06:29
22 lines
1497 bytes
In article <133@metro.oz> rossc@metro.oz (Ross Cartlidge) writes:
>747a748
>> 		vtp->t_state |= BUSY;
>798a800
>> 		vtp->t_state &= ~BUSY;
>873a876
>> 				vtp->t_state &= ~BUSY;
>940a944
>> 			vtp->t_state &= ~BUSY;

These line numbers match version 6.5 of the sxt driver under
s5r2.0v1 on our VAX-11/780.  Under s5r2.0v2, our version 6.7,
the line numbers are: 742, 793, 868, 935.  Ross was good enough
to tell me that each of these immediately precedes a change to
lp->wpending, and send a more complete (sort-of-context) diff.

On our working version, the line numbers are: 751, 802, 877, 944.
This includes fixes to allow the VAX console to use sxt (posted
separately).
-- 

	Joe Yao		hadron!jsdy@seismo.{CSS.GOV,ARPA,UUCP}
Another sxt bug: VAX console
#13
Author: Joseph S. D. Yao
Date: Wed, 25 Dec 1985 06:49
52 lines
2231 bytes
The sxt driver does not recognise the VAX console as a tty device,
and consequently does not allow it to be associated with an sxt.
This is because it isn't really a tty device -- it is a separate
processor with the console terminal and boot load device as its
peripherals.  Setting up the console to resemble a tty device is
not a good solution, as that means that the console boot device
then also gets treated as a tty device.  The following is a diff
of the change made here, annotated since there are different
versions of the SXT driver.  Basically, the change is to modify
the tty check on an sxtioctl SXTIOCLINK so that before returning
an error it checks whether the offending device is in fact the
console.

==========
6a7,9
3: /*
4:  * SXT --  Driver for shell layers
5:  */
6: 
> #ifndef	lint
>   static char SCCS_id[] = "%W%";
> #endif	lint
7: 
30a34,36
29: #include "sys/sxt.h"
30: 
> #define CONSOLE	0	/* Device number of console. */
> 
> extern struct tty con_tty;
31: 
249,250c255,259
214: sxtioctl(dev, cmd, arg, mode)
215: {
	...
243:	case SXTIOCLINK:
244:		if (arg > MAXPCHAN || arg < 1) {
245:			u.u_error = EINVAL;
246:			break;
247:		}
248:		if(  (tp = cdevsw[major(u.u_ttyd)].d_ttys) == NULL) {
< 			u.u_error = ENOTTY;
< 			break;
---
> 			if (u.u_ttyd != CONSOLE) {
> 				u.u_error = ENOTTY;
> 				break;
> 			}
> 			tp = &con_tty;
251: 		}
-- 

	Joe Yao		hadron!jsdy@seismo.{CSS.GOV,ARPA,UUCP}
An xt bug: VAX console
#14
Author: Joseph S. D. Yao
Date: Wed, 25 Dec 1985 07:02
9 lines
1176 bytes
There is a bug in the xt driver identical to the one documented
in the sxt driver in <1414@hadron.UUCP>, for anyone who might ever
have a Blit as their system console.  This is not surprising, as
the latter is an adaptation of the former.  (That's the only
reason this bug was found, as we use a hardcopy terminal as the
console, as most people do.)
-- 

	Joe Yao		hadron!jsdy@seismo.{CSS.GOV,ARPA,UUCP}
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads