From owner-freebsd-current Tue Aug 21 6:34: 2 2001 Delivered-To: freebsd-current@freebsd.org Received: from tao.org.uk (genesis.tao.org.uk [212.135.162.62]) by hub.freebsd.org (Postfix) with ESMTP id 6973837B403 for ; Tue, 21 Aug 2001 06:33:43 -0700 (PDT) (envelope-from joe@tao.org.uk) Received: by tao.org.uk (Postfix, from userid 100) id 3E14C48D; Tue, 21 Aug 2001 14:33:40 +0100 (BST) Date: Mon, 20 Aug 2001 11:52:07 +0100 From: Josef Karthauser To: current@freebsd.org Subject: Disk I/O problems with -current. Message-ID: <20010820115207.B1696@tao.org.uk> Mail-Followup-To: Josef Karthauser , current@freebsd.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-md5; protocol="application/pgp-signature"; boundary="QTprm0S8XgL7H0Dt" Content-Disposition: inline User-Agent: Mutt/1.2.5i Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG --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 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: on motherboard Timecounter "ACPI" frequency 3579545 Hz acpi_cpu0: on acpi0 acpi_tz0: on acpi0 acpi_lid0: on acpi0 acpi_cmbat0: on acpi0 acpi_cmbat1: on acpi0 acpi_acad0: on acpi0 acpi_pcib0: on acpi0 pci0: on acpi_pcib0 agp0: mem 0xe0000000-0xe3ffffff= at device 0.0 on pci0 pcib1: at device 1.0 on pci0 pci1: on pcib1 pci1: 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: 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: on pcic0 acpi_pcib0: matched entry for 0.4.INTA (source \\_SB_.PCI0.PX40.LNKA) acpi_pcib0: device is routed to IRQ 11 pcic1: 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: on pcic1 isab0: at device 7.0 on pci0 isa0: on isab0 atapci0: port 0x1050-0x105f at device 7.1 on= pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 uhci0: port 0x1060-0x107f irq 5 a= t device 7.2 on pci0 usb0: 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: on aue0 ukphy0: on miibus0 ukphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto pci0: at 7.3 (no driver attached) pcm0: port 0x1400-0x14ff irq 5 at device 8.0 on= pci0 pci0: at 16.0 (no driver attached) acpi_ec0: on acpi0 acpi_button0: on acpi0 acpi_button1: on acpi0 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x1008-0x100b on acpi0 npx0: on motherboard npx0: INT 16 interface orm0: