svn commit: r184771 - in head/sys: dev/syscons kern sys
Ed Schouten
ed at FreeBSD.org
Sat Nov 8 12:40:40 PST 2008
Author: ed
Date: Sat Nov 8 20:40:39 2008
New Revision: 184771
URL: http://svn.freebsd.org/changeset/base/184771
Log:
Reduce the default baud rate of PTY's to 9600.
On RELENG_6 (and probably RELENG_7) we see our syscons windows and
pseudo-terminals have the following buffer sizes:
| LINE RAW CAN OUT IHIWT ILOWT OHWT LWT COL STATE SESS PGID DISC
| ttyv0 0 0 0 7680 6720 2052 256 7 OCcl 1146 1146 term
| ttyp0 0 0 0 7680 6720 1296 256 0 OCc 82033 82033 term
These buffer sizes make no sense, because we often have much more output
than input, but I guess having higher input buffer sizes improves
guarantees of the system.
On MPSAFE TTY I just sent both the input and output buffer sizes to 7
KB, which is pretty big on a standard FreeBSD install with 8 syscons
windows and some PTY's. Reduce the baud rate to 9600 baud, which means
we now have the following buffer sizes:
| LINE INQ CAN LIN LOW OUTQ USE LOW COL SESS PGID STATE
| ttyv0 1920 0 0 192 1984 0 199 7 2401 2401 Oil
| pts/0 1920 0 0 192 1984 0 199 5631 1305 2526 Oi
This is a lot smaller, but for pseudo-devices this should be good
enough. You need to do a lot of punching to fill up a 7.5 KB input
buffer. If it turns out things don't work out this way, we'll just
switch to 19200 baud.
Modified:
head/sys/dev/syscons/sysmouse.c
head/sys/kern/tty.c
head/sys/sys/ttydefaults.h
Modified: head/sys/dev/syscons/sysmouse.c
==============================================================================
--- head/sys/dev/syscons/sysmouse.c Sat Nov 8 19:56:32 2008 (r184770)
+++ head/sys/dev/syscons/sysmouse.c Sat Nov 8 20:40:39 2008 (r184771)
@@ -148,7 +148,7 @@ smdev_param(struct tty *tp, struct termi
* Set the output baud rate to zero. The mouse device supports
* no output, so we don't want to waste buffers.
*/
- t->c_ispeed = TTYDEF_SPEED_PSEUDO;
+ t->c_ispeed = TTYDEF_SPEED;
t->c_ospeed = B0;
return (0);
Modified: head/sys/kern/tty.c
==============================================================================
--- head/sys/kern/tty.c Sat Nov 8 19:56:32 2008 (r184770)
+++ head/sys/kern/tty.c Sat Nov 8 20:40:39 2008 (r184771)
@@ -802,7 +802,7 @@ ttydevsw_defparam(struct tty *tp, struct
{
/* Use a fake baud rate, we're not a real device. */
- t->c_ispeed = t->c_ospeed = TTYDEF_SPEED_PSEUDO;
+ t->c_ispeed = t->c_ospeed = TTYDEF_SPEED;
return (0);
}
Modified: head/sys/sys/ttydefaults.h
==============================================================================
--- head/sys/sys/ttydefaults.h Sat Nov 8 19:56:32 2008 (r184770)
+++ head/sys/sys/ttydefaults.h Sat Nov 8 20:40:39 2008 (r184771)
@@ -52,7 +52,6 @@
#define TTYDEF_LFLAG TTYDEF_LFLAG_ECHO
#define TTYDEF_CFLAG (CREAD | CS8 | HUPCL)
#define TTYDEF_SPEED (B9600)
-#define TTYDEF_SPEED_PSEUDO (B38400)
/*
* Control Character Defaults
More information about the svn-src-head
mailing list