Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 May 1999 19:56:38 +1000 (EST)
From:      mhol@wkt.slip.adfa.edu.au (Warren Toomey)
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   i386/11575: sio.c silo overflows during X usage
Message-ID:  <199905080956.TAA01225@wkt.slip.adfa.edu.au>

next in thread | raw e-mail | index | archive | help

>Number:         11575
>Category:       i386
>Synopsis:       sio.c silo overflows during X usage
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat May  8 03:00:01 PDT 1999
>Closed-Date:
>Last-Modified:
>Originator:     Warren Toomey
>Release:        FreeBSD 3.1-STABLE i386
>Organization:
Personal
>Environment:

FreeBSD 3.1-STABLE kernel, Pentium II 266 with 64M,  XFree86 3.3.3.1

sio0 at 0x3f8-0x3ff irq 4 flags 0x10 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A

/sys/i386/isa/sio.c 1.224.2.5 1999/04/13 18:54:43 jhay

Kernel ppp running on sio1 (i.e /dev/ttyd1) at 38400bps, connected to
a 33K external modem. stty flags were:

ppp disc; speed 38400 baud; 0 rows; 0 columns;
lflags: -icanon -isig -iexten -echo -echoe -echok -echoke -echonl
        -echoctl -echoprt -altwerase -noflsh -tostop -flusho -pendin
        -nokerninfo -extproc
iflags: -istrip -icrnl -inlcr -igncr -ixon -ixoff -ixany -imaxbel ignbrk
        -brkint -inpck ignpar -parmrk
oflags: -opost -onlcr -oxtabs
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb crtscts -dsrflow
        -dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
        eol2 = <undef>; erase = ^?; intr = ^C; kill = ^U; lnext = ^V;
        min = 1; quit = ^\; reprint = ^R; start = ^Q; status = ^T;
        stop = ^S; susp = ^Z; time = 0; werase = ^W;

At time of problem, the following processes were running

  PID  TT  STAT      TIME COMMAND
    0  ??  DLs    0:00.00  (swapper)
    1  ??  Ss     0:00.01 /sbin/init --
    2  ??  DL     0:00.00  (pagedaemon)
    3  ??  DL     0:00.00  (vmdaemon)
    4  ??  DL     0:00.27  (syncer)
  108  ??  Is     0:02.00 syslogd
  233  ??  R      2:03.86 /usr/X11R6/bin/Xwrapper :0 (XF86_SVGA)
  259  ??  Ss     0:00.20 moused -p /dev/cuaa0 -t mousesystems
  313  ??  Is     0:00.01 pppd
  254  p0  Ss     0:00.23 -csh (tcsh)
  415  p0  R+     0:00.00 ps -ax
  253  p1  Is+    0:00.12 -tcsh (tcsh)
  225  v0  Is+    0:00.11 /bin/sh /usr/X11R6/bin/startx
  232  v0  I+     0:00.04 xinit /usr/home/mhol/.xinitrc --
  239  v0  S      0:00.26 fvwm
  248  v0  S      0:00.33 xterm -e tcsh
  249  v0  S      0:00.50 xterm -C
  226  v1  Is+    0:00.01 /usr/libexec/getty Pc ttyv1
  227  v2  Is+    0:00.01 /usr/libexec/getty Pc ttyv2

>Description:

Serial port silo overflows occur on sio1 (i.e /dev/ttyd1), using kernel
ppp, when there is heavy X display activity. When X is not running, or
when little X activity is occurring, no silo overflows occur. In fact,
with X quiescent, and the system load >8 (due to several while(1) ;
processes) there are no silo overflows.

When windows are moved around, scrolling is done within a text window,
of when x11perf -all is running, silo overflows go from none at all to
several per second.

There is no other system activity (no disk activity, no mouse activity,
no incoming LAN packets, no other I/O activity). Although I generally
use natd, this was also disabled during the test.

>How-To-Repeat:

Start X windows. Start kernel-mode ppp to an ISP, using an external 33K modem.
Once connected, begin a large ftp download which you know will saturate
the link. Note the complete lack of silo overflows.

Begin to perform heavy text scrolling within an xterm window (e.g du -a /usr),
or run x11perf -all. Note several silo overflows per second, which causes
chronic stalls in the FTP transfer, and severe incoming packet losses.

>Fix:

	No fix known at this time. I notice that /sys/i386/isa/sio.c
has been moved to /sys/isa/sio.c in -CURRENT, and at least one
revision mentions silo overflows (1.225). However, I am unable to
merge this change into my 3.1-STABLE /sys/i386/isa/sio.c

>Release-Note:
>Audit-Trail:
>Unformatted:


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199905080956.TAA01225>