NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/56143: Serial-line speed switch can corrupt "drained" output
The following reply was made to PR kern/56143; it has been noted by GNATS.
From: Robert Elz <kre%munnari.OZ.AU@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc:
Subject: Re: kern/56143: Serial-line speed switch can corrupt "drained" output
Date: Wed, 05 May 2021 03:13:30 +0700
Date: Tue, 4 May 2021 15:45:01 +0000 (UTC)
From: Mouse <mouse%Rodents-Montreal.ORG@localhost>
Message-ID: <20210504154501.1790A1A9244%mollari.NetBSD.org@localhost>
| I don't know why this is; ttywait_timo checks TS_BUSY as well
| as t_outq.c_cc. Perhaps the com driver doesn't set TS_BUSY
| entirely correctly?
More likely the hardware is saying that it has transmitted the
character when all it has really done is move it to its shift
register (and so the output character buffer is free for the next).
The driver would need to test deeper hardware state to tell if the
hardware has actually finished transmitting the character, and is
fully idle. I'm not even sure if all hardware has a way to return
that kind of state (but I semi-recall - it has been a very long time -
that some hardware does provide that info). It would need special case
handling in each driver for this ioctl to get this right though.
kre
Home |
Main Index |
Thread Index |
Old Index