ioctl's that flush typeahead on SunOS 4.0.3

Mark Rawling rcomr at koel.co.rmit.oz
Mon Oct 29 12:41:41 AEST 1990


ag at cbmvax.commodore.com (Keith Gabryelski) writes:

>In article <43727 at andante.att.com> mp at allegra.att.com (Mark Plotnick) writes:
>>One person here who wants absolute stability in his computing
>>environment reluctantly had his 4MB Sun-3/75 upgraded from SunOS 3.2 to
>>SunOS 4.0.3 (another manager wanted to retire the OS 3.2 fileserver).  He
>>is now pissed off because his typeahead is being flushed when the
>>'stty', 'more', and 'vi' commands are run (his objection to vi is that
>>typein after ZZ is flushed).  He said this never happened
>>before, and accuses Sun of changing the UNIX interface he's used for 15
>>years, and he wants us to fix this.
>>Maybe the problem is caused by ioctls that have changed.  Maybe the
>>increased slowness of OS 4.0 on memory-poor systems causes more of
>>a delay in process creation and exit, and this just exacerbates the race
>>condition that he's been toying with all these years.

>He is complaining about the twiddle ICANON flushing problem that was
>added to ldterm.

>There was a patch from me sent to comp.unix.internals a couple or
>three weeks ago to remove this feature, although some (a well
>respected net.type) feels the flushing is the correct behavior.

>I will send you the patch if you like.

>Pax, Keith

Is this related to the following complaint I posted to comp.sys.sun last
week (which hasn't appeared yet, if ever). I'll leave the dbx stuff in 
in case anyone knows what gives there too.

=========================================================================
Could someone _please_ comment on the following bugs (ie are they known?
have they been fixed? will they be fixed? does anyone give a damn? etc):-
(SS1+, SunOS4.1, X windows)

(1) dbx

`use' is broken:-

	(dbx) use a b c
	(dbx) use
	c b a

Wrong order! Can have nasty consequences when searching for files.

(2) dbx

`up' and `down' are broken

	up (and less commonly down) report the wrong line number

(3) csh

	% set filec      (causes the bug)
	% set ignoreeof  (saves you from the consequences of the bug)
	% vi
	(in vi - :map #1 :w^M^Z ie write out the file and suspend)
	(in vi - hit F1 and any other key close together eg F1x)
	Stopped
	%
	Use "logout" to logout.
	%

The extra character (x) gets swallowed and the shell gets an EOF.
This is _really_ annoying 'cause I used to use this function mapping
all the time, until SunOS4 came along and stuffed up csh (and dbx).
NB this doesn't just happen in vi - less does it too, but it has to be 
made to work, eg swap it out first. Perhaps it's related to curses or
more likely anything that plays with terminal modes.
Of course, if you don't set ignoreeof, your window just disappears on you.
I used to think my randomly vanishing windows was some horrible X bug,
but the truth is now revealed.

I trust someone with some responsibility will have the decency to give a
meaningful reply to this article ;-).

============================================================================
Mark Rawling,    CSIRO Division of Information Technology,
	         High Performance Computation Group,
                 c/o Royal Melbourne Institute of Technology,
                 email: rcomr at koel.co.rmit.oz{.au}, phone: (+ 61 3) 660 2726



More information about the Comp.unix.internals mailing list