Horrible ugliness in V.2 readi/writei.
Phil Chadwick
phil at qfdts.oz
Tue Jul 30 15:41:34 AEST 1985
In article <150 at neology.OZ> chris at neology.OZ (Chris Maltby) says:
>The problem turned out to be this
>revolting code in the 5.2 readi/writei code:
>
> if (cdevsw[major(dev)].d_tty != NULL)
> {
> tp = &cdevsw[major(dev)].d_tty[minor(dev)];
> (*linesw[tp->t_ldisc].l_write)(tp);
> }
> else
> (*cdevsw[major(dev)].d_write)(minor(dev));
>
>This part of the system has no right to assume what the code in a
>driver's read/write routine does, even if it seems to be a tty driver.
Here, here!
I tripped over this some time ago while writing a pseudo dn11 driver.
Code put into the tty's write routine did nothing (not surprising -
once you realise it's being bypassed). To the best of my recollection
it's been there since the very first System V release.
----
Phil Chadwick Australia: (07) 2296500
Department of Forestry International: +61 7 2296500
PO Box 5 ACSnet: phil at qfdts.oz
Brisbane, Roma Street ARPA: decvax!mulga!qfdts.oz!phil at UCB-VAX.ARPA
AUSTRALIA 4001 UUCP: {decvax,vax135,eagle,pesnta}!mulga!qfdts.oz!phil
More information about the Net.bugs.usg
mailing list