From owner-freebsd-bugs Sat Sep 21 20:10: 9 2002 Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A708037B404 for ; Sat, 21 Sep 2002 20:10:04 -0700 (PDT) Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0AA1943E77 for ; Sat, 21 Sep 2002 20:10:03 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.12.6/8.12.6) with ESMTP id g8M3A2Co078207 for ; Sat, 21 Sep 2002 20:10:02 -0700 (PDT) (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.12.6/8.12.6/Submit) id g8M3A2uv078206; Sat, 21 Sep 2002 20:10:02 -0700 (PDT) Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CDEAF37B401 for ; Sat, 21 Sep 2002 20:05:17 -0700 (PDT) Received: from mta6.srv.hcvlny.cv.net (mta6.srv.hcvlny.cv.net [167.206.5.17]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0999243E65 for ; Sat, 21 Sep 2002 20:05:17 -0700 (PDT) (envelope-from agapon@excite.com) Received: from edge.foundation.invalid (ool-182f9083.dyn.optonline.net [24.47.144.131]) by mta6.srv.hcvlny.cv.net (iPlanet Messaging Server 5.2 HotFix 0.9 (built Jul 29 2002)) with ESMTP id <0H2T00K4SKH0G8@mta6.srv.hcvlny.cv.net> for FreeBSD-gnats-submit@freebsd.org; Sat, 21 Sep 2002 23:03:00 -0400 (EDT) Received: from edge.foundation.invalid (localhost.foundation.invalid [127.0.0.1]) by edge.foundation.invalid (8.12.3/8.12.3) with ESMTP id g8M32sgg000775 for ; Sat, 21 Sep 2002 23:02:54 -0400 Received: (from avg@localhost) by edge.foundation.invalid (8.12.3/8.12.3/Submit) id g8M32sja000774; Sat, 21 Sep 2002 23:02:54 -0400 (EDT) Message-Id: <200209220302.g8M32sja000774@edge.foundation.invalid> Date: Sat, 21 Sep 2002 23:02:54 -0400 (EDT) From: Andriy Gapon Reply-To: Andriy Gapon To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Subject: kern/43217: ata: strange fallback to PIO mode Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org >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: 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 [119150/16/63] at ata0-master tagged UDMA33 ad1: 8063MB [16383/16/63] at ata0-slave UDMA33 acd0: CD-RW at ata1-master UDMA33 acd1: DVD-ROM 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