PERFORCE change 148549 for review
Ed Schouten
ed at FreeBSD.org
Tue Aug 26 20:42:31 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=148549
Change 148549 by ed at ed_dull on 2008/08/26 20:42:16
Prevent one unneeded tty_lock() inside ptsdev_write().
Affected files ...
.. //depot/projects/mpsafetty/sys/kern/tty_pts.c#14 edit
Differences ...
==== //depot/projects/mpsafetty/sys/kern/tty_pts.c#14 (text+ko) ====
@@ -162,14 +162,14 @@
size_t iblen, rintlen;
int error = 0;
- tty_lock(tp);
+ if (uio->uio_resid == 0)
+ return (0);
- while (uio->uio_resid > 0) {
- /* Temporarily unlock to buffer new characters. */
- tty_unlock(tp);
+ for (;;) {
ibstart = ib;
iblen = MIN(uio->uio_resid, sizeof ib);
error = uiomove(ib, iblen, uio);
+
tty_lock(tp);
if (error != 0)
goto done;
@@ -218,6 +218,10 @@
if (error != 0)
goto done;
}
+
+ if (uio->uio_resid == 0)
+ break;
+ tty_unlock(tp);
}
done: ttydisc_rint_done(tp);
More information about the p4-projects
mailing list