cf45120117
type/status/etc inquiries. (PR kern/37915) This is clearly a design problem in tty, but we need a cheap fix now. The problem is that ttyinput() tries to pull a spinlock which is already held on calls to t_oproc. The workaround is based on the fact that within wscons code, the wsdisplay_emulinput() function is only called directly from wsdisplaystart(). So we can be sure that the tty lock is held, and use an inofficial entry point in ttc.c which avoids the locking. These ate certainly more assumptions than needed by the fix proposed in the PR, but it doesn't affect (and slow down) other tty drivers. |
||
---|---|---|
.. | ||
ascii.h | ||
files.wscons | ||
Makefile | ||
mra.c | ||
tpcalib.c | ||
tpcalibvar.h | ||
unicode.h | ||
wscons_callbacks.h | ||
wscons_raster.h | ||
wscons_rfont.h | ||
wscons_rinit.c | ||
wscons_rops.c | ||
wsconsio.h | ||
wsdisplay_compat_usl.c | ||
wsdisplay_usl_io.h | ||
wsdisplay_vcons.c | ||
wsdisplay_vconsvar.h | ||
wsdisplay.c | ||
wsdisplayvar.h | ||
wsemul_dumb.c | ||
wsemul_sun.c | ||
wsemul_vt100_chars.c | ||
wsemul_vt100_keys.c | ||
wsemul_vt100_subr.c | ||
wsemul_vt100.c | ||
wsemul_vt100var.h | ||
wsemulconf.c | ||
wsemulvar.h | ||
wsevent.c | ||
wseventvar.h | ||
wskbd.c | ||
wskbdutil.c | ||
wskbdvar.h | ||
wsksymdef.h | ||
wsksymvar.h | ||
wsmouse.c | ||
wsmousevar.h | ||
wsmux.c | ||
wsmuxvar.h |