Date: Sat, 21 Sep 2002 23:02:54 -0400 (EDT) From: Andriy Gapon <avg@excite.com> To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/43217: ata: strange fallback to PIO mode Message-ID: <200209220302.g8M32sja000774@edge.foundation.invalid>
next in thread | raw e-mail | index | archive | help
>Number: 43217 >Category: kern >Synopsis: ata: strange fallback to PIO mode >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sat Sep 21 20:10:02 PDT 2002 >Closed-Date: >Last-Modified: >Originator: Andriy Gapon >Release: FreeBSD 4.6.2-RELEASE-p2 i386 >Organization: none >Environment: System: FreeBSD edge.foundation.invalid 4.6.2-RELEASE-p2 FreeBSD 4.6.2-RELEASE-p2 #5: Sat Sep 21 22:13:59 EDT 2002 avg@edge.foundation.invalid:/sys-devel/obj/sys-devel/src/sys/EDGE i386 hardware and system config: atapci0: <Intel PIIX4 ATA33 controller> port 0xf000-0xf00f at device 7.1 on pci0 ata0: at 0x1f0 irq 14 on atapci0 ata1: at 0x170 irq 15 on atapci0 ad0: 58644MB <IC35L060AVVA07-0> [119150/16/63] at ata0-master tagged UDMA33 ad1: 8063MB <SAMSUNG SV0844D> [16383/16/63] at ata0-slave UDMA33 acd0: CD-RW <LITE-ON LTR-40125W> at ata1-master UDMA33 acd1: DVD-ROM <TOSHIBA DVD-ROM SD-M1212> at ata1-slave UDMA33 hw.ata.ata_dma: 1 hw.ata.wc: 1 hw.ata.tags: 1 hw.ata.atapi_dma: 1 >Description: after some time after boot (from several hours to several days) ad0 falls back to PIO4. attempts to change mode back to UDMA33 via atacontrol either fail (fall back to PIO on what seems to be the first disk access) or cause machine to hang Here are the messages form log: Sep 21 02:55:15 edge /kernel: ad0: READ command timeout tag=0 serv=1 - resetting Sep 21 02:55:26 edge /kernel: ad0: invalidating queued requests Sep 21 02:55:26 edge /kernel: ad0: timeout waiting for cmd=00 s=c0 e=04 Sep 21 02:55:26 edge /kernel: ad0: flush queue failed Sep 21 02:55:26 edge /kernel: ata0: resetting devices .. ad0: invalidating queued requests Sep 21 02:55:26 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device Sep 21 02:55:26 edge /kernel: done Sep 21 02:55:26 edge /kernel: ad0: timeout waiting for READY Sep 21 02:55:26 edge /kernel: ad0: invalidating queued requests Sep 21 02:55:26 edge /kernel: ad0: timeout sending command=00 s=d0 e=04 Sep 21 02:55:26 edge /kernel: ad0: flush queue failed Sep 21 02:55:26 edge /kernel: - resetting Sep 21 02:55:26 edge /kernel: ata0: resetting devices .. ad0: invalidating queued requests Sep 21 02:55:26 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device Sep 21 02:55:26 edge /kernel: done Sep 21 02:55:26 edge /kernel: ad0: READ command timeout tag=0 serv=1 - resetting Sep 21 02:55:26 edge /kernel: ad0: invalidating queued requests Sep 21 02:55:26 edge /kernel: ata0: resetting devices .. ad0: invalidating queued requests Sep 21 02:55:26 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device Sep 21 02:55:26 edge /kernel: done Sep 21 02:55:26 edge /kernel: ad0: WRITE command timeout tag=1 serv=0 - resetting Sep 21 02:55:26 edge /kernel: ad0: invalidating queued requests Sep 21 02:55:26 edge /kernel: ata0: resetting devices .. ad0: invalidating queued requests Sep 21 02:55:26 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device Sep 21 02:55:26 edge /kernel: done Sep 21 02:55:46 edge /kernel: ad0: READ command timeout tag=0 serv=1 - resetting Sep 21 02:55:46 edge /kernel: ad0: invalidating queued requests Sep 21 02:55:46 edge /kernel: ata0: resetting devices .. ad0: invalidating queued requests Sep 21 02:55:46 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device Sep 21 02:55:46 edge /kernel: done Sep 21 02:55:46 edge /kernel: ad0: timeout waiting for READY Sep 21 02:55:46 edge /kernel: ad0: invalidating queued requests Sep 21 02:55:46 edge /kernel: ad0: timeout sending command=00 s=d0 e=04 Sep 21 02:55:46 edge /kernel: ad0: flush queue failed Sep 21 02:55:46 edge /kernel: - resetting Sep 21 02:55:46 edge /kernel: ata0: resetting devices .. ad0: invalidating queued requests Sep 21 02:55:46 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device Sep 21 02:55:46 edge /kernel: done Sep 21 02:55:46 edge /kernel: ad0: READ command timeout tag=0 serv=1 - resetting Sep 21 02:55:46 edge /kernel: ad0: invalidating queued requests Sep 21 02:55:46 edge /kernel: ad0: trying fallback to PIO mode Sep 21 02:55:46 edge /kernel: ata0: resetting devices .. ad0: invalidating queued requests Sep 21 02:55:46 edge /kernel: done Sep 21 02:55:56 edge /kernel: ad0: WRITE command timeout tag=0 serv=0 - resetting Sep 21 02:55:56 edge /kernel: ad0: invalidating queued requests Sep 21 02:55:56 edge /kernel: ata0: resetting devices .. ad0: invalidating queued requests Sep 21 02:55:56 edge /kernel: done appears that device already started to serve the request, but never actually transered data (or so it appeared) and then 'flush queue' NOP command just couldn't clear BSY flag until mode was forced down to PIO (effectively disabling tag queueing too). >How-To-Repeat: don't know, it just happens over here. >Fix: I wish I had it >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?200209220302.g8M32sja000774>