Re: Interrupt latency problems

From: matt <matt_at_grogged.dyndns.org>
Date: Mon, 19 May 2003 16:40:54 -0500 (CDT)
I hate to even bring this one up but I'm seeing the same symptoms on a
k6/2 400, which isn't an SMP box, and doesn't have acpi enabled.  The
problem is more or less as described earlier, any intense disk access more
or less makes X unbearably unresponsive (mouse updates ever 3 seconds or
so, same for keystroke echos on xterms).  Back under 4.7-R I can remember
downloading files from this box over 100Mbps e-net and saturating the
line, with X remaining very usable, now it's more like 5MB/s with a
semi-frozen X display, so I'm pretty sure the machine has enough muscle to
do what I'm asking of it.  Took some patience but I grabbed some output
from top -S while I was downloading a file over ftp from the k6/2 400, as
seen below.  Oh, I guess I should mention that as soon as I kill a file
transfer X instantly returns back to its normal, usable self. Other
relevant (and not so relevant) information below:

# dmesg
Copyright (c) 1992-2003 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 5.1-BETA #2: Wed May 14 22:15:33 GMT 2003
    matt_at_hopelessposh.dyndns.org:/usr/src/sys/i386/compile/POSH
Preloaded elf kernel "/boot/kernel/kernel" at 0xc04d8000.
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 400910367 Hz
CPU: AMD-K6(tm) 3D processor (400.91-MHz 586-class CPU)
  Origin = "AuthenticAMD"  Id = 0x58c  Stepping = 12
  Features=0x8021bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,PGE,MMX>
  AMD Features=0x80000800<SYSCALL,3DNow!>
real memory  = 201326592 (192 MB)
avail memory = 190259200 (181 MB)
K6-family MTRR support enabled (2 registers)
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcibios: BIOS version 2.10
Using $PIR table, 6 entries at 0xc00fdb30
pcib0: <AcerLabs M1541 (Aladdin-V) PCI host bridge> at pcibus 0 on
motherboard
pci0: <PCI bus> on pcib0
agp0: <Ali M1541 host to AGP bridge> mem 0xe0000000-0xe3ffffff at device
0.0 on pci0
pcib1: <PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
pci1: <display, VGA> at device 0.0 (no driver attached)
isab0: <PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Promise PDC20262 UDMA66 controller> port
0xe000-0xe03f,0xdc00-0xdc03,0xd800-0xd807,0xd400-0xd403,0xd000-0xd007 mem
0xed100000-0xed11ff
ff irq 15 at device 8.0 on pci0
ata2: at 0xd000 on atapci0
ata3: at 0xd800 on atapci0
fxp0: <Intel 82557/8/9 EtherExpress Pro/100(B) Ethernet> port
0xe400-0xe43f mem 0xed000000-0xed0fffff,0xed120000-0xed120fff irq 11 at
device 9.0
 on pci0
fxp0: Ethernet address 00:04:ac:d3:7c:bb
miibus0: <MII bus> on fxp0
inphy0: <i82555 10/100 media interface> on miibus0
inphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
ahc0: <Adaptec 2940 Ultra SCSI adapter> port 0xe800-0xe8ff mem
0xed121000-0xed121fff irq 10 at device 10.0 on pci0
aic7880: Ultra Single Channel A, SCSI Id=7, 16/253 SCBs
atapci1: <AcerLabs Aladdin UDMA33 controller> port 0xf000-0xf00f at device
15.0 on pci0
ata0: at 0x1f0 irq 14 on atapci1
ata1: simplex device, DMA on primary only
ata1: at 0x170 irq 15 on atapci1
orm0: <Option ROMs> at iomem
0xd4000-0xd47ff,0xcc000-0xd3fff,0xc0000-0xc9fff on isa0
pmtimer0 on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x64,0x60 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model IntelliMouse Explorer, device ID 4
fdc0: <Enhanced floppy controller (i82077, NE72065 or clone)> at port
0x3f7,0x3f0-0x3f5 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
ppc0: parallel port not found.
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1: configured irq 3 not in bitmap of probed irqs 0
sio1: port may not be enabled
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
unknown: <PNP0303> can't assign resources (port)
unknown: <PNP0f13> can't assign resources (irq)
unknown: <PNP0700> can't assign resources (port)
unknown: <PNP0501> can't assign resources (port)
Timecounters tick every 10.000 msec
ad0: 9768MB <ST310212A> [19846/16/63] at ata0-master UDMA33
ad4: 114440MB <WDC WD1200JB-75CRA0> [232514/16/63] at ata2-master UDMA66
ad6: 114440MB <WDC WD1200JB-75CRA0> [232514/16/63] at ata3-master UDMA66
ar0: 228880MB <ATA RAID0 array> [29178/255/63] status: READY subdisks:
 disk0 READY on ad4 at ata2-master
 disk1 READY on ad6 at ata3-master
Waiting 15 seconds for SCSI devices to settle
Opened disk ad4 -> 1
Opened disk ad4 -> 1
Opened disk ad6 -> 1
Opened disk ad6 -> 1
cd1 at ahc0 bus 0 target 6 lun 0
cd1: <TOSHIBA DVD-ROM SD-M1401 1009> Removable CD-ROM SCSI-2 device
cd1: 20.000MB/s transfers (20.000MHz, offset 15)
cd1: cd present [2298496 x 2048 byte records]
Mounting root from ufs:/dev/ad0s1a
cd0 at ahc0 bus 0 target 2 lun 0
cd0: <TOSHIBA DVD-ROM SD-M1401 1010> Removable CD-ROM SCSI-2 device
cd0: 20.000MB/s transfers (20.000MHz, offset 15)
cd0: Attempt to query device size failed: NOT READY, Medium not present
drm0: <3dfx Voodoo3 3000> port 0xc000-0xc0ff mem
0xe8000000-0xe9ffffff,0xe4000000-0xe5ffffff irq 15 at device 0.0 on pci1
info: [drm] Initialized tdfx 1.0.0 20010216 on minor 0


# uname -a
FreeBSD hopelessposh.dyndns.org 5.1-BETA FreeBSD 5.1-BETA #2: Wed May 14 22:15:33 GMT 2003
matt_at_hopelessposh.dyndns.org:/usr/src/sys/i386/compile/POSH  i386

last pid:  8109;  load averages:  4.54,  1.51,  0.69    up 0+09:06:42  17:58:22
74 processes:  6 running, 60 sleeping, 8 waiting
CPU states:  1.2% user,  0.0% nice, 68.2% system, 28.0% interrupt,  2.5% idle
Mem: 52M Active, 82M Inact, 43M Wired, 6816K Cache, 28M Buf, 572K Free
Swap: 364M Total, 116K Used, 364M Free

  PID USERNAME PRI NICE   SIZE    RES STATE    TIME   WCPU    CPU COMMAND
 8102 root       4    0  1876K  1348K sbwait   0:39 44.28% 44.24% ftpd
   22 root     -68 -187     0K    12K WAIT     2:15 12.94% 12.94% irq11: fxp0
    4 root      -8    0     0K    12K g_down   2:25 11.38% 11.38% g_down
   12 root     -44 -163     0K    12K WAIT     1:49  8.40%  8.40% swi1: net
   11 root     -16    0     0K    12K RUN    507:38  5.22%  5.22% idle
   21 root     -64 -183     0K    12K WAIT     0:55  5.18%  5.18% irq15: atapci
    3 root      -8    0     0K    12K g_up     0:32  1.27%  1.27% g_up
    5 root     -16    0     0K    12K psleep   0:17  0.98%  0.98% pagedaemon
   13 root     -48 -167     0K    12K RUN      1:51  0.20%  0.20% swi7: tty:sio
 1107 root      96    0 78524K 77328K RUN      3:39  0.00%  0.00% XFree86
 1136 matt      96    0  5300K  3936K select   1:14  0.00%  0.00% xclock
 1126 matt      96    0  4704K  2996K select   0:29  0.00%  0.00% xterm
    7 root     171   52     0K    12K RUN      0:16  0.00%  0.00% pagezero
 1906 matt      96    0  3304K  1844K select   0:11  0.00%  0.00% telnet
   32 root      20    0     0K    12K syncer   0:10  0.00%  0.00% syncer

# ps -aux | grep acpi
root   8175  0.0  0.3  1336  600  p3  DL+   6:13PM   0:00.03 grep acpi
# ps -agx | grep irq
   21  ??  WL     0:56.79  (irq15: atapci0 ata1)
   22  ??  WL     2:19.14  (irq11: fxp0)
   23  ??  WL     0:00.00  (irq10: ahc0)
   24  ??  WL     0:04.01  (irq14: ata0)
   25  ??  WL     0:00.97  (irq1: atkbd0)
   26  ??  WL     0:01.48  (irq12: psm0)
   27  ??  WL     0:00.00  (irq6: fdc0)
 8177  p3  R+     0:00.01 grep irq

kernel config file:
# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.382 2003/04/21 16:44:04 simokawa
Exp $

machine         i386
cpu             I586_CPU
cpu             I686_CPU
ident           POSH

makeoptions     DEBUG=-g                #Build kernel with gdb(1) debug
symbols

options         SCHED_4BSD              #4BSD scheduler
options         INET                    #InterNETworking
options         INET6                   #IPv6 communications protocols
options         FFS                     #Berkeley Fast Filesystem
options         SOFTUPDATES             #Enable FFS soft updates support
options         UFS_ACL                 #Support for access control lists
options         UFS_DIRHASH             #Improve performance on big directories
options         MD_ROOT                 #MD is a potential root device
options         NFSCLIENT               #Network Filesystem Client
options         NFSSERVER               #Network Filesystem Server
options         NFS_ROOT                #NFS usable as root device, requires NFSCLIENT
options         MSDOSFS                 #MSDOS Filesystem
options         CD9660                  #ISO 9660 Filesystem
options         PROCFS                  #Process filesystem (requires PSEUDOFS)
options         PSEUDOFS                #Pseudo-filesystem framework
options         COMPAT_43               #Compatible with BSD 4.3 [KEEP THIS!]
options         COMPAT_FREEBSD4         #Compatible with FreeBSD4
options         SCSI_DELAY=15000        #Delay (in ms) before probing SCSI
options         KTRACE                  #ktrace(1) support
options         SYSVSHM                 #SYSV-style shared memory
options         SYSVMSG                 #SYSV-style message queues
options         SYSVSEM                 #SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time
extensions
options         KBD_INSTALL_CDEV        # install a CDEV entry in /dev
options         AHC_REG_PRETTY_PRINT    # Print register bitfields in
debug
                                        # output.  Adds ~128k to driver.
options         AHD_REG_PRETTY_PRINT    # Print register bitfields in
debug
                                        # output.  Adds ~215k to driver.

options         GEOM_BDE

# Debugging for use in -current
options         DDB                     #Enable the kernel debugger
options         INVARIANTS              #Enable calls of extra sanity
checking
options         INVARIANT_SUPPORT       #Extra sanity checks of internal
structures, required by INVARIANTS
options         WITNESS                 #Enable checks to detect deadlocks
and cycles
options         WITNESS_SKIPSPIN        #Don't run witness on spinlocks
for speed

device          isa
device          eisa
device          pci

# Floppy drives
device          fdc

# ATA and ATAPI devices
device          ata
device          atadisk                 # ATA disk drives
device          atapicd                 # ATAPI CDROM drives
options         ATA_STATIC_ID           #Static device numbering
# SCSI Controllers
device          ahc             # AHA2940 and onboard AIC7xxx devices

# SCSI peripherals
device          scbus           # SCSI bus (required)
device          ch              # SCSI media changers
device          da              # Direct Access (disks)
device          cd              # CD
device          pass            # Passthrough device (direct SCSI access)
device          ses             # SCSI Environmental Services (and SAF-TE)

# atkbdc0 controls both the keyboard and the PS/2 mouse
device          atkbdc          # AT keyboard controller
device          atkbd           # AT keyboard
device          psm             # PS/2 mouse

device          vga             # VGA video card driver

device          splash          # Splash screen and screen saver support

# syscons is the default console driver, resembling an SCO console
device          sc

# Enable this for the pcvt (VT220 compatible) console driver
#device         vt
options         XSERVER                 # support for X server on a vt
console
#options        FAT_CURSOR              # start with block cursor

device          agp             # support several AGP chipsets

# Floating point support - do not disable.
device          npx

# Power management support (see NOTES for more options)
#device         apm
# Add suspend/resume support for the i8254.
device          pmtimer

# Serial (COM) ports
device          sio             # 8250, 16[45]50 based serial ports

# Parallel port
device          ppc
device          ppbus           # Parallel port bus (required)
device          lpt             # Printer
device          plip            # TCP/IP over parallel
device          ppi             # Parallel port interface device
#device         vpo             # Requires scbus and da


# PCI Ethernet NICs that use the common MII bus controller code.
# NOTE: Be sure to keep the 'device miibus' line in order to use these
NICs!
device          miibus          # MII bus support
device          fxp             # Intel EtherExpress PRO/100B (82557,
82558)

# 'device ed' requires 'device miibus'
device          ep              # Etherlink III based cards

# Pseudo devices - the number indicates how many units to allocate.
device          random          # Entropy device
device          loop            # Network loopback
device          ether           # Ethernet support
device          sl              # Kernel SLIP
device          ppp             # Kernel PPP
device          tun             # Packet tunnel.
device          pty             # Pseudo-ttys (telnet etc)
device          md              # Memory "disks"
device          gif             # IPv6 and IPv4 tunneling
device          faith           # IPv6-to-IPv4 relaying (translation)

# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
device          bpf             # Berkeley packet filter

# USB support
device          uhci            # UHCI PCI->USB interface
device          ohci            # OHCI PCI->USB interface
device          usb             # USB Bus (required)
#device         udbp            # USB Double Bulk Pipe devices
device          ugen            # Generic
device          uhid            # "Human Interface Devices"
device          ukbd            # Keyboard
device          ulpt            # Printer
device          umass           # Disks/Mass storage - Requires scbus and
da
device          ums             # Mouse
device          urio            # Diamond Rio 500 MP3 player
device          uscanner        # Scanners
# USB Ethernet, requires mii
device          aue             # ADMtek USB ethernet
device          axe             # ASIX Electronics USB ethernet
device          cue             # CATC USB ethernet
device          kue             # Kawasaki LSI USB ethernet


 - I'm going to try the other scheduler I guess and see if that changes
anything.  Any suggestions or observations are appreciated.  Thanks
everyone,

- Matt
Received on Mon May 19 2003 - 12:50:44 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:08 UTC