diff options
author | bde <bde@FreeBSD.org> | 1995-07-22 01:30:45 +0000 |
---|---|---|
committer | bde <bde@FreeBSD.org> | 1995-07-22 01:30:45 +0000 |
commit | 688f94b1434ed320dfa1c4a16c80bac5f308daf5 (patch) | |
tree | c4afe09d343e52acfa2524ee2edbd4e49000cf11 /sys/dev/rc | |
parent | 94cb7648d61aaab09b106f4dfb5fcd1e8c6c3cfc (diff) | |
download | FreeBSD-src-688f94b1434ed320dfa1c4a16c80bac5f308daf5.zip FreeBSD-src-688f94b1434ed320dfa1c4a16c80bac5f308daf5.tar.gz |
Move the inline code for waking up writers to a new function
ttwwakeup(). The conditions for doing the wakeup will soon become
more complicated and I don't want them duplicated in all drivers.
It's probably not worth making ttwwakeup() a macro or an inline
function. The cost of the function call is relatively small when
there is a process to wake up. There is usually a process to wake
up for large writes and the system call overhead dwarfs the function
call overhead for small writes.
Diffstat (limited to 'sys/dev/rc')
-rw-r--r-- | sys/dev/rc/rc.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/sys/dev/rc/rc.c b/sys/dev/rc/rc.c index 8eb0f93..1db4a3d 100644 --- a/sys/dev/rc/rc.c +++ b/sys/dev/rc/rc.c @@ -551,13 +551,7 @@ register struct tty *tp; #ifdef RCDEBUG printrcflags(rc, "rcstart"); #endif - if (tp->t_outq.c_cc <= tp->t_lowat) { - if (tp->t_state & TS_ASLEEP) { - tp->t_state &= ~TS_ASLEEP; - wakeup((caddr_t)&tp->t_outq); - } - selwakeup(&tp->t_wsel); - } + ttwwakeup(tp); #ifdef RCDEBUG printf("rcstart: outq = %d obuf = %d\n", tp->t_outq.c_cc, rc->rc_obufend - rc->rc_optr); |