Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 20 Aug 2001 11:52:07 +0100
From:      Josef Karthauser <joe@tao.org.uk>
To:        current@freebsd.org
Subject:   Disk I/O problems with -current.
Message-ID:  <20010820115207.B1696@tao.org.uk>

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

--QTprm0S8XgL7H0Dt
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

I'm having strange problems with -current on a laptop with 64mb of
memory.  Periodically "things go strange" [tm].

Because of the lack of memory I'm using a fair amount of swap.

Everything runs smoothly up until a point, which seems to depend upon
not running too many large processes for too long.  Then the file system
grinds to a halt for seconds at a time.  Some processes run, and others
just hang.

Here's a snapshot from top:

last pid:  1861;  load averages:  1.58,  1.63,  1.26    up 0+00:43:56  09:5=
8:09
39 processes:  1 running, 38 sleeping
CPU states:  1.2% user,  0.0% nice,  8.1% system,  5.8% interrupt, 84.9% id=
le
Mem: 14M Active, 2712K Inact, 21M Wired, 1460K Cache, 14M Buf, 20M Free
Swap: 512M Total, 16M Used, 496M Free, 3% Inuse

  PID USERNAME PRI NICE   SIZE    RES STATE    TIME   WCPU    CPU COMMAND
  594 root      96    0 23300K 10784K select   0:12  0.00%  0.00% XFree86
 1731 joe       -8    0  6056K  3352K biowr    0:14  5.08%  5.08% vim
  691 joe       96    0  4092K  1804K select   0:02  0.00%  0.00% wmaker
 1719 joe        8    0  3340K  1864K wait     0:00  0.00%  0.00% mutt
  658 root       8    0  2964K   908K wait     0:00  0.00%  0.00% xdm
  591 root      20    0  2800K   632K pause    0:00  0.00%  0.00% xdm
  279 root      96    0  2364K   480K select   0:00  0.00%  0.00% sshd
  724 joe        8    0  2324K   740K nanslp   0:01  0.00%  0.00% wmCalClock
 1209 joe       96    0  2292K  1168K select   0:01  0.10%  0.10% rxvt
 1716 joe       96    0  2256K  1348K select   0:00  0.00%  0.00% rxvt
 1214 joe       20    0  2088K  1188K pause    0:00  0.00%  0.00% zsh
  725 joe        8    0  2060K   824K nanslp   0:10  0.00%  0.00% wmtop
 1401 joe       96    0  2028K   888K RUN      0:02  0.00%  0.00% top
 1812 joe      -12    0  2012K   768K inode    0:01  0.00%  0.00% rxvt
  700 joe        8    0  1988K   840K nanslp   0:00  0.00%  0.00% xautolock
  701 joe       96    0  1828K   492K select   0:00  0.00%  0.00% ssh-agent
  253 root      84  -12  1388K   564K select   0:00  0.00%  0.00% ntpd
 1779 root      96    0  1232K   760K select   0:00  0.00%  0.00% local
 1777 postfix   96    0  1228K   820K select   0:00  0.00%  0.00% smtpd
  649 postfix   96    0  1204K   656K select   0:01  0.00%  0.00% qmgr
 1778 postfix   96    0  1196K   760K select   0:00  0.00%  0.00% cleanup
  271 root      96    0  1184K   416K select   0:00  0.00%  0.00% inetd
 1700 postfix   96    0  1152K   676K select   0:00  0.00%  0.00% trivial-r=
ewri
  648 root      96    0  1144K   496K select   0:00  0.00%  0.00% pickup
  647 root      96    0  1120K   528K select   0:00  0.00%  0.00% master
  273 root       8    0  1108K   548K nanslp   0:00  0.00%  0.00% cron
  276 root      96    0  1076K   388K select   0:00  0.00%  0.00% lpd
  583 root       5    0  1064K   396K ttyin    0:00  0.00%  0.00% getty
  588 root       5    0  1064K   396K ttyin    0:00  0.00%  0.00% getty
  585 root       5    0  1064K   396K ttyin    0:00  0.00%  0.00% getty
  590 root       5    0  1064K   396K ttyin    0:00  0.00%  0.00% getty
  586 root       5    0  1064K   396K ttyin    0:00  0.00%  0.00% getty
  587 root       5    0  1064K   396K ttyin    0:00  0.00%  0.00% getty
  589 root       5    0  1064K   396K ttyin    0:00  0.00%  0.00% getty
  584 root       5    0  1064K   396K ttyin    0:00  0.00%  0.00% getty
  243 root      96    0  1060K   492K select   0:00  0.00%  0.00% syslogd
  341 root      96    0  1024K   388K select   0:00  0.00%  0.00% usbd
  397 root      96    0  1020K   400K select   0:03  0.00%  0.00% moused
 1730 joe        8    0   816K   156K wait     0:00  0.00%  0.00% sh

The vim process (pid=3D1731) was waiting in biowr for about a minute when
I took this snapshot.  I'd ZZ'd it, but instead of writing it's file, it
just blocked instead.

Interestingly take a look at the disk i/o irqs:


    2 users    Load  1.21  1.49  1.24                  Aug 20 09:59

Mem:KB    REAL            VIRTUAL                     VN PAGER  SWAP PAGER
        Tot   Share      Tot    Share    Free         in  out     in  out
Act    8368    1648    29620     2824   21312 count
All   40472    1952  2567408     4908         pages
                                                                 Interrupts
Proc:r  p  d  s  w    Csw  Trp  Sys  Int  Sof  Flt        cow    1966 total
           2 10      7194   15 1038 2031   13   17  21612 wire        stray=
 irq0
                                                    14404 act         stray=
 irq6
 7.5%Sys   5.3%Intr  1.2%User  0.0%Nice 86.0%Idl     2984 inact       acpi0=
 irq9
|    |    |    |    |    |    |    |    |    |       1472 cache  1697 ata0 =
irq14
=3D=3D=3D=3D++>                                             19840 free     =
   ata1 irq15
                                                          daefr       uhci0=
 irq5
Namei         Name-cache    Dir-cache                     prcfr     1 pcm0 =
irq5
    Calls     hits    %     hits    %                     react       atkbd=
0 irq
      504      504  100                                   pdwak    40 psm0 =
irq12
                                          zfod            pdpgs   100 clk i=
rq0
Disks   ad0  acd0   fd0                   ofod            intrn   128 rtc i=
rq8
KB/t   5.00  0.00  0.00                   %slo-z    14416 buf
tps    1699     0     0                   tfree        43 dirtybuf
MB/s   8.30  0.00  0.00                              5837 desiredvnodes
% busy   97     0     0                              2347 numvnodes
                                                     1624 freevnodes


Over 1000 interrupts a second for ata0?  What could be causing that?
Interesting enough a cvsup started (under cron) and then the irq's for
ata0 dropped to 300.  When I killed it they raised again.


Can anyone suggest anything that I could try?

Thanks,
Joe

p.s: here's my dmesg from running, and getting away with, doing a
/sbin/reboot.  Usually I have to power cycle the machine:

ACPI debug layer 0x0  debug level 0x0
Copyright (c) 1992-2001 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.0-CURRENT #15: Sun Aug 19 01:00:40 BST 2001
    joe@genius.tao.org.uk:/usr/obj/usr/src/sys/GENIUS
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 497838463 Hz
CPU: Pentium III/Pentium III Xeon/Celeron (497.84-MHz 686-class CPU)
  Origin =3D "GenuineIntel"  Id =3D 0x681  Stepping =3D 1
  Features=3D0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,=
CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory  =3D 67043328 (65472K bytes)
avail memory =3D 60088320 (58680K bytes)
Preloaded elf kernel "kernel" at 0xc046a000.
Preloaded elf module "agp.ko" at 0xc046a09c.
Pentium Pro MTRR support enabled
VESA: v2.0, 8128k memory, flags:0x0, mode table:0xc03cef82 (1000022)
VESA: ATI MACH64
Using $PIR table, 7 entries at 0xc00fdf50
acpi0: <DELL   I 5000 > on motherboard
Timecounter "ACPI"  frequency 3579545 Hz
acpi_cpu0: <CPU> on acpi0
acpi_tz0: <thermal zone> on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_cmbat0: <Control method Battery> on acpi0
acpi_cmbat1: <Control method Battery> on acpi0
acpi_acad0: <AC adapter> on acpi0
acpi_pcib0: <Host-PCI bridge> on acpi0
pci0: <PCI bus> on acpi_pcib0
agp0: <Intel 82443BX (440 BX) host to PCI 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 0.0 (no driver attached)
acpi_pcib0: matched entry for 0.4.INTA (source \\_SB_.PCI0.PX40.LNKA)
acpi_pcib0: device is routed to IRQ 11
pcic0: <TI PCI-1225 PCI-CardBus Bridge> irq 11 at device 4.0 on pci0
pcic0: PCI Memory allocated: 0x44000000
pcic0: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][pci o=
nly]
pccard0: <PC Card bus (classic)> on pcic0
acpi_pcib0: matched entry for 0.4.INTA (source \\_SB_.PCI0.PX40.LNKA)
acpi_pcib0: device is routed to IRQ 11
pcic1: <TI PCI-1225 PCI-CardBus Bridge> irq 11 at device 4.1 on pci0
pcic1: PCI Memory allocated: 0x44001000
pcic1: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][pci o=
nly]
pccard1: <PC Card bus (classic)> on pcic1
isab0: <PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 ATA33 controller> port 0x1050-0x105f at device 7.1 on=
 pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0x1060-0x107f irq 5 a=
t device 7.2 on pci0
usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
aue0: LINKSYS Inc. LINKSYS USB Adapter, rev 1.10/1.01, addr 2
aue0: Ethernet address: 00:e0:98:84:c5:55
miibus0: <MII bus> on aue0
ukphy0: <Generic IEEE 802.3u media interface> on miibus0
ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
pci0: <bridge, PCI-unknown> at 7.3 (no driver attached)
pcm0: <ESS Technology Maestro-2E> port 0x1400-0x14ff irq 5 at device 8.0 on=
 pci0
pci0: <simple comms> at 16.0 (no driver attached)
acpi_ec0: <embedded controller> on acpi0
acpi_button0: <Power Button> on acpi0
acpi_button1: <Sleep Button> on acpi0
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
npx0: <math processor> on motherboard
npx0: INT 16 interface
orm0: <Option ROM> at iomem 0xc0000-0xcffff on isa0
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=3D0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0: parallel port not found.
pmtimer0 on isa0
unknown: <PNP0200> can't assign resources
unknown: <PNP0303> can't assign resources
unknown: <PNP0F13> can't assign resources
acpi_ec0: evaluation of GPE query method _QF0 failed - AE_NOT_FOUND
acpi_cpu0: set speed to 100.0%
acpi_cpu: CPU throttling enabled, 8 steps from 100% to 12.5%
ata1-slave: ata_command: timeout waiting for intr
ata1-slave: identify failed
ad0: 19077MB <HITACHI_DK23BA-20> [38760/16/63] at ata0-master UDMA33
acd0: DVD-ROM <TOSHIBA DVD-ROM SD-C2402> at ata1-master PIO4
Mounting root from ufs:/dev/ad0s2a
WARNING: / was not properly dismounted
WARNING: /data was not properly dismounted
WARNING: /tmp was not properly dismounted
WARNING: /usr was not properly dismounted
/usr: lost blocks 8860 files 36
/usr: superblock summary recomputed
WARNING: /var was not properly dismounted
linprocfs registered
/dev/vmmon: Module vmmon: registered with major=3D200 minor=3D0 tag=3D$Name=
: build-570 $
/dev/vmmon: Module vmmon: initialized
aue0: promiscuous mode enabled
vmnet1: promiscuous mode enabled
Waiting (max 60 seconds) for system process `bufdaemon' to stop...stopped
Waiting (max 60 seconds) for system process `syncer' to stop...stopped

syncing disks... 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1=20
giving up on 1 buffers
Uptime: 49m46s
stray irq 9
Rebooting...
ACPI debug layer 0x0  debug level 0x0
Copyright (c) 1992-2001 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.0-CURRENT #15: Sun Aug 19 01:00:40 BST 2001
    joe@genius.tao.org.uk:/usr/obj/usr/src/sys/GENIUS
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 497837650 Hz
CPU: Pentium III/Pentium III Xeon/Celeron (497.84-MHz 686-class CPU)
  Origin =3D "GenuineIntel"  Id =3D 0x681  Stepping =3D 1
  Features=3D0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,=
CMOV,PAT,PSE36,MMX,FXSR,SSE>
real memory  =3D 67043328 (65472K bytes)
avail memory =3D 60088320 (58680K bytes)
Preloaded elf kernel "kernel" at 0xc046a000.
Preloaded elf module "agp.ko" at 0xc046a09c.
Pentium Pro MTRR support enabled
VESA: v2.0, 8128k memory, flags:0x0, mode table:0xc03cef82 (1000022)
VESA: ATI MACH64
Using $PIR table, 7 entries at 0xc00fdf50
acpi0: <DELL   I 5000 > on motherboard
Timecounter "ACPI"  frequency 3579545 Hz
acpi_cpu0: <CPU> on acpi0
acpi_tz0: <thermal zone> on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_cmbat0: <Control method Battery> on acpi0
acpi_cmbat1: <Control method Battery> on acpi0
acpi_acad0: <AC adapter> on acpi0
acpi_pcib0: <Host-PCI bridge> on acpi0
pci0: <PCI bus> on acpi_pcib0
agp0: <Intel 82443BX (440 BX) host to PCI 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 0.0 (no driver attached)
acpi_pcib0: matched entry for 0.4.INTA (source \\_SB_.PCI0.PX40.LNKA)
acpi_pcib0: device is routed to IRQ 11
pcic0: <TI PCI-1225 PCI-CardBus Bridge> mem 0x44000000-0x44000fff irq 11 at=
 device 4.0 on pci0
pcic0: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][pci o=
nly]
pccard0: <PC Card bus (classic)> on pcic0
acpi_pcib0: matched entry for 0.4.INTA (source \\_SB_.PCI0.PX40.LNKA)
acpi_pcib0: device is routed to IRQ 11
pcic1: <TI PCI-1225 PCI-CardBus Bridge> mem 0x44001000-0x44001fff irq 11 at=
 device 4.1 on pci0
pcic1: TI12XX PCI Config Reg: [ring enable][speaker enable][pwr save][pci o=
nly]
pccard1: <PC Card bus (classic)> on pcic1
isab0: <PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel PIIX4 ATA33 controller> port 0x1050-0x105f at device 7.1 on=
 pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0
uhci0: <Intel 82371AB/EB (PIIX4) USB controller> port 0x1060-0x107f irq 5 a=
t device 7.2 on pci0
usb0: <Intel 82371AB/EB (PIIX4) USB controller> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
aue0: LINKSYS Inc. LINKSYS USB Adapter, rev 1.10/1.01, addr 2
aue0: Ethernet address: 00:e0:98:84:c5:55
miibus0: <MII bus> on aue0
ukphy0: <Generic IEEE 802.3u media interface> on miibus0
ukphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
pci0: <bridge, PCI-unknown> at 7.3 (no driver attached)
pcm0: <ESS Technology Maestro-2E> port 0x1400-0x14ff irq 5 at device 8.0 on=
 pci0
pci0: <simple comms> at 16.0 (no driver attached)
acpi_ec0: <embedded controller> on acpi0
acpi_button0: <Power Button> on acpi0
acpi_button1: <Sleep Button> on acpi0
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0
npx0: <math processor> on motherboard
npx0: INT 16 interface
orm0: <Option ROM> at iomem 0xc0000-0xcffff on isa0
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=3D0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0: parallel port not found.
pmtimer0 on isa0
unknown: <PNP0200> can't assign resources
unknown: <PNP0303> can't assign resources
unknown: <PNP0F13> can't assign resources
acpi_cpu0: set speed to 100.0%
acpi_cpu: CPU throttling enabled, 8 steps from 100% to 12.5%
ata1-slave: ata_command: timeout waiting for intr
ata1-slave: identify failed
ad0: 19077MB <HITACHI_DK23BA-20> [38760/16/63] at ata0-master UDMA33
acd0: DVD-ROM <TOSHIBA DVD-ROM SD-C2402> at ata1-master PIO4
Mounting root from ufs:/dev/ad0s2a
WARNING: / was not properly dismounted
WARNING: /data was not properly dismounted
WARNING: /tmp was not properly dismounted
/tmp: lost blocks 0 files 1
WARNING: /usr was not properly dismounted
WARNING: /var was not properly dismounted
linprocfs registered
/dev/vmmon: Module vmmon: registered with major=3D200 minor=3D0 tag=3D$Name=
: build-570 $
/dev/vmmon: Module vmmon: initialized
aue0: promiscuous mode enabled
vmnet1: promiscuous mode enabled

--QTprm0S8XgL7H0Dt
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (FreeBSD)
Comment: For info see http://www.gnupg.org

iEYEARECAAYFAjuA69YACgkQXVIcjOaxUBYv7ACeIKmuscG4T/aohDuKPlVIpRwt
eu8AoMqBDAIwhLkcXy5yO27IhwE4CPku
=irCL
-----END PGP SIGNATURE-----

--QTprm0S8XgL7H0Dt--

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




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