[comp.bugs.4bsd] cnputc

jeff@voder.UUCP (Jeff Gilliam) (11/14/86)

Index:	sys/vax/cons.c 4.3BSD

Description:
	When booting a VAX may appear to hang between the last
	autoconfiguration message and going multi-user.  Typing
	any character at the console unhangs the system.
Repeat-By:
	Use a slow console and configure lots of devices.  Or,
	type a ^S followed by a ^Q on the console while booting.
Fix:
	Fix cnputc() to honor flow control.

RCS file: RCS/cons.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -c -r1.1 -r1.2
*** /tmp/,RCSt1002397	Fri Nov 14 00:13:41 1986
--- /tmp/,RCSt2002397	Fri Nov 14 00:13:42 1986
***************
*** 192,197 ****
--- 188,197 ----
  {
  	register int s, timo;
  
+ 	if (mfpr(RXCS)&RXCS_DONE && (mfpr(RXDB)&0177) == CTRL(S))
+ 		while ((mfpr(RXCS)&RXCS_DONE) == 0 ||
+ 		       (mfpr(RXDB)&0177) != CTRL(Q))
+ 			;
  	timo = 30000;
  	/*
  	 * Try waiting for the console tty to come ready,
-- 

Jeff Gilliam	{ucbvax,pyramid,nsc}!voder!jeff