From agapon@excite.com  Sat Sep 21 20:05:17 2002
Return-Path: <agapon@excite.com>
Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id CDEAF37B401
	for <FreeBSD-gnats-submit@freebsd.org>; 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 <FreeBSD-gnats-submit@freebsd.org>; 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
 <FreeBSD-gnats-submit@freebsd.org>; 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 <avg@excite.com>
Reply-To: Andriy Gapon <avg@excite.com>
To: FreeBSD-gnats-submit@freebsd.org
Cc:
Subject: ata: strange fallback to PIO mode
X-Send-Pr-Version: 3.113
X-GNATS-Notify:

>Number:         43217
>Category:       kern
>Synopsis:       ata: strange fallback to PIO mode
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    sos
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Sep 21 20:10:02 PDT 2002
>Closed-Date:    Mon Apr 28 11:53:55 PDT 2003
>Last-Modified:  Thu May  8 13:00:23 PDT 2003
>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:

From: Andriy Gapon <avg@icyb.net.ua>
To: freebsd-gnats-submit@FreeBSD.org
Cc:  
Subject: Re: kern/43217: ata: strange fallback to PIO mode
Date: Wed, 25 Sep 2002 09:24:41 -0400 (EDT)

 yet another fallback, not sure if this is related to the previous one
 or something new:
 
 
 Sep 25 04:09:41 edge /kernel: ad0: READ command timeout tag=3 serv=0 - resetting
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:12 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:12 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ata0: devices=03
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device
 Sep 25 04:10:12 edge /kernel: ad0: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: done
 Sep 25 04:10:12 edge /kernel: ad0: no request for tag=3
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ad0: no request for tag=0
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ad0: READ command timeout tag=3 serv=0 - resetting
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:12 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:12 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ata0: devices=03
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device
 Sep 25 04:10:12 edge /kernel: ad0: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: done
 Sep 25 04:10:12 edge /kernel: ad0: READ command timeout tag=0 serv=0 - resetting
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:12 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:12 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ata0: devices=03
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device
 Sep 25 04:10:12 edge /kernel: ad0: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: done
 Sep 25 04:10:12 edge /kernel: ad0: timeout waiting for READY
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ad0: timeout sending command=00 s=d0 e=04
 Sep 25 04:10:12 edge /kernel: ad0: flush queue failed
 Sep 25 04:10:12 edge /kernel: - resetting
 Sep 25 04:10:12 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=d0 ostat2=50
 Sep 25 04:10:12 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:12 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ata0: devices=03
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device
 Sep 25 04:10:12 edge /kernel: ad0: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: done
 Sep 25 04:10:12 edge /kernel: ad0: READ command timeout tag=3 serv=0 - resetting
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:12 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:12 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:12 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:12 edge /kernel: ata0: devices=03
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:12 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device
 Sep 25 04:10:12 edge /kernel: ad0: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:12 edge /kernel: done
 Sep 25 04:10:12 edge /kernel: ad0: READ command timeout tag=0 serv=0 - resetting
 Sep 25 04:10:12 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:13 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:13 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ata0: devices=03
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device
 Sep 25 04:10:13 edge /kernel: ad0: success setting UDMA2 on Intel chip
 Sep 25 04:10:13 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:13 edge /kernel: done
 Sep 25 04:10:13 edge /kernel: ad0: timeout waiting for READY
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ad0: timeout sending command=00 s=d0 e=04
 Sep 25 04:10:13 edge /kernel: ad0: flush queue failed
 Sep 25 04:10:13 edge /kernel: - resetting
 Sep 25 04:10:13 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=d0 ostat2=50
 Sep 25 04:10:13 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:13 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ata0: devices=03
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device
 Sep 25 04:10:13 edge /kernel: ad0: success setting UDMA2 on Intel chip
 Sep 25 04:10:13 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:13 edge /kernel: done
 Sep 25 04:10:13 edge /kernel: ad0: WRITE command timeout tag=0 serv=0 - resetting
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:13 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:13 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ata0: devices=03
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ad0: DMA limited to UDMA33, non-ATA66 cable or device
 Sep 25 04:10:13 edge /kernel: ad0: success setting UDMA2 on Intel chip
 Sep 25 04:10:13 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:13 edge /kernel: done
 Sep 25 04:10:13 edge /kernel: ad0: READ command timeout tag=3 serv=0 - resetting
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ad0: success setting PIO4 on generic chip
 Sep 25 04:10:13 edge /kernel: ad0: trying fallback to PIO mode
 Sep 25 04:10:13 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=50 ostat2=50
 Sep 25 04:10:13 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:13 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ata0: devices=03
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ad0: success setting PIO4 on generic chip
 Sep 25 04:10:13 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:13 edge /kernel: done
 Sep 25 04:10:13 edge /kernel: ad0: READ command timeout tag=0 serv=0 - resetting
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:13 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:13 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:13 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:13 edge /kernel: ata0: devices=03
 Sep 25 04:10:13 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:13 edge /kernel: ad0: success setting PIO4 on generic chip
 Sep 25 04:10:13 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:13 edge /kernel: done
 Sep 25 04:10:22 edge /kernel: ad0: WRITE command timeout tag=0 serv=0 - resetting
 Sep 25 04:10:22 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:22 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:22 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:22 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:22 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:22 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:22 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:22 edge /kernel: ata0: devices=03
 Sep 25 04:10:22 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:22 edge /kernel: ad0: success setting PIO4 on generic chip
 Sep 25 04:10:22 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:22 edge /kernel: done
 Sep 25 04:10:22 edge /kernel: ad0: WRITE command timeout tag=0 serv=0 - resetting
 Sep 25 04:10:22 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:22 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=51 ostat2=50
 Sep 25 04:10:22 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:22 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:22 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:22 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:22 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:22 edge /kernel: ata0: devices=03
 Sep 25 04:10:22 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:22 edge /kernel: ad0: success setting PIO4 on generic chip
 Sep 25 04:10:22 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:22 edge /kernel: done
 Sep 25 04:10:22 edge /kernel: ad0: READ command timeout tag=3 serv=0 - resetting
 Sep 25 04:10:22 edge /kernel: ata0: resetting devices .. ata0: mask=03 ostat0=50 ostat2=50
 Sep 25 04:10:22 edge /kernel: ad0: ATAPI 00 00
 Sep 25 04:10:22 edge /kernel: ad1: ATAPI 00 00
 Sep 25 04:10:22 edge /kernel: ata0: mask=03 stat0=50 stat1=50
 Sep 25 04:10:22 edge /kernel: ad0: ATA 01 a5
 Sep 25 04:10:22 edge /kernel: ad1: ATA 01 a5
 Sep 25 04:10:22 edge /kernel: ata0: devices=03
 Sep 25 04:10:22 edge /kernel: ad0: invalidating queued requests
 Sep 25 04:10:22 edge /kernel: ad0: success setting PIO4 on generic chip
 Sep 25 04:10:22 edge /kernel: ad1: success setting UDMA2 on Intel chip
 Sep 25 04:10:22 edge /kernel: done
 
 -- 
 Andriy Gapon
 *
 Hang on tightly, let go lightly.
 
Responsible-Changed-From-To: freebsd-bugs->sos 
Responsible-Changed-By: johan 
Responsible-Changed-When: Sun Sep 29 06:43:14 PDT 2002 
Responsible-Changed-Why:  
Over to ATA maintaier. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=43217 

From: Andriy Gapon <avg@icyb.net.ua>
To: freebsd-gnats-submit@FreeBSD.org
Cc: sos@FreeBSD.org
Subject: Re: kern/43217: ata: strange fallback to PIO mode
Date: Thu, 03 Oct 2002 23:37:04 -0400 (EDT)

 the same problem (?) again with the same HDD on different controller:
 
 p4:edge-21:51>dmesg | fgrep ata
 pnpbios: Found PnP BIOS data at 0xc00fbf90
 atapci0: <Intel PIIX4 ATA33 controller> port 0xf000-0xf00f at device 7.1
 on pci0
 ata0: iobase=0x01f0 altiobase=0x03f6 bmaddr=0xf000
 ata0: mask=03 ostat0=50 ostat2=00
 ata0-master: ATAPI 00 00
 ata0-slave: ATAPI 00 00
 ata0: mask=03 stat0=50 stat1=00
 ata0-master: ATA 01 a5
 ata0: devices=01
 ata0: at 0x1f0 irq 14 on atapci0
 ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0xf008
 ata1: mask=03 ostat0=50 ostat2=50
 ata1-master: ATAPI 14 eb
 ata1-slave: ATAPI 14 eb
 ata1: mask=03 stat0=00 stat1=00
 ata1: devices=0c
 ata1: at 0x170 irq 15 on atapci0
 atapci1: <Promise TX2 ATA100 controller> port
 0xe400-0xe40f,0xe000-0xe003,0xdc00
 -0xdc07,0xd800-0xd803,0xd400-0xd407 mem 0xdb000000-0xdb003fff irq 5 at
 device 9.
 0 on pci0
 ata-: ata2 exists, using next available unit number
 ata2: iobase=0xd400 altiobase=0xd802 bmaddr=0xe400
 ata2: mask=03 ostat0=50 ostat2=00
 ata2-master: ATAPI 00 00
 ata2-slave: ATAPI 00 00
 ata2: mask=03 stat0=50 stat1=00
 ata2-master: ATA 01 a5
 ata2: devices=01
 ata2: at 0xd400 on atapci1
 ata3: iobase=0xdc00 altiobase=0xe002 bmaddr=0xe408
 ata3: mask=03 ostat0=20 ostat2=30
 ata3-master: ATAPI 20 20
 ata3-slave: ATAPI 30 30
 ata3: mask=03 stat0=20 stat1=30
 ata3-master: ATA 25 25
 ata3-slave: ATA 25 25
 ata3: devices=00
 ata3: at 0xdc00 on atapci1
 ad0: <SAMSUNG SV0844D/KU100> ATA-3 disk at ata0-master
 ad4: <IC35L060AVVA07-0/VA3OA52A> ATA-5 disk at ata2-master
 ata1-master: piomode=4 dmamode=2 udmamode=2 dmaflag=1
 ata1-master: success setting UDMA2 on Intel chip
 acd0: <LITE-ON LTR-40125W/WS03> CD-RW drive at ata1 as master
 ata1-slave: piomode=4 dmamode=2 udmamode=2 dmaflag=1
 ata1-slave: success setting UDMA2 on Intel chip
 acd1: <TOSHIBA DVD-ROM SD-M1212/1R14> DVD-ROM drive at ata1 as sla
 
 p4:edge-21:51>dmesg | fgrep ad
 Creating DISK ad0
 ad0: <SAMSUNG SV0844D/KU100> ATA-3 disk at ata0-master
 ad0: 8063MB (16514064 sectors), 16383 C, 16 H, 63 S, 512 B
 ad0: 16 secs/int, 1 depth queue, UDMA33
 ad0: piomode=4 dmamode=2 udmamode=2 cblid=1
 ad4: success setting UDMA5 on Promise chip
 Creating DISK ad4
 ad4: <IC35L060AVVA07-0/VA3OA52A> ATA-5 disk at ata2-master
 ad4: 58644MB (120103200 sectors), 119150 C, 16 H, 63 S, 512 B
 ad4: 16 secs/int, 32 depth queue, tagged UDMA100
 ad4: piomode=4 dmamode=2 udmamode=5 cblid=1
 acd0: read 687KB/s (32KB/s) write 172KB/s (6875KB/s), 1984KB buffer,
 UDMA33
 acd0: Reads: CD-R, CD-RW, CD-DA stream, packet
 acd1: read 5512KB/s (3271KB/s), 256KB buffer, UDMA33
 acd1: Reads: CD-R, CD-RW, CD-DA stream, DVD-ROM, DVD-R
 
 
 /var/log/messages:
 
 Oct  2 02:04:10 edge /kernel: ad4: READ command timeout tag=0 serv=1 -
 resetting
 Oct  2 02:05:02 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:02 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:02 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:02 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:02 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:02 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:02 edge /kernel: ata2: devices=01
 Oct  2 02:05:02 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:02 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Oct  2 02:05:02 edge /kernel: done
 Oct  2 02:05:02 edge /kernel: ad4: timeout waiting for READY
 Oct  2 02:05:02 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:02 edge /kernel: ad4: timeout sending command=00 s=d0 e=04
 Oct  2 02:05:02 edge /kernel: ad4: flush queue failed
 Oct  2 02:05:02 edge /kernel: - resetting
 Oct  2 02:05:02 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=d0
  ostat2=00
 Oct  2 02:05:02 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:02 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:02 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:02 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:02 edge /kernel: ata2: devices=01
 Oct  2 02:05:02 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:02 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Oct  2 02:05:02 edge /kernel: done
 Oct  2 02:05:02 edge /kernel: ad4: READ command timeout tag=0 serv=1 -
 resetting
 Oct  2 02:05:02 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:02 edge /kernel: ad4: timeout waiting for cmd=00 s=c0 e=04
 Oct  2 02:05:02 edge /kernel: ad4: flush queue failed
 Oct  2 02:05:02 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=c0
  ostat2=00
 Oct  2 02:05:02 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:02 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:02 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:02 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:02 edge /kernel: ata2: devices=01
 Oct  2 02:05:02 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:02 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Oct  2 02:05:02 edge /kernel: done
 Oct  2 02:05:02 edge /kernel: ad4: READ command timeout tag=1 serv=1 -
 resetting
 Oct  2 02:05:02 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:02 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:02 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:02 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:02 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:02 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:02 edge /kernel: ata2: devices=01
 Oct  2 02:05:02 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: no request for tag=1
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: WRITE command timeout tag=0 serv=0 -
 resettin
 g
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for cmd=00 s=c0 e=04
 Oct  2 02:05:03 edge /kernel: ad4: flush queue failed
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=c0
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: READ command timeout tag=0 serv=1 -
 resetting
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for cmd=00 s=c0 e=04
 Oct  2 02:05:03 edge /kernel: ad4: flush queue failed
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=c0
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: READ command timeout tag=1 serv=1 -
 resetting
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: no request for tag=1
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: WRITE command timeout tag=0 serv=0 -
 resettin
 g
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for cmd=00 s=c0 e=04
 Oct  2 02:05:03 edge /kernel: ad4: flush queue failed
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=c0
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: READ command timeout tag=0 serv=1 -
 resetting
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for cmd=00 s=c0 e=04
 Oct  2 02:05:03 edge /kernel: ad4: flush queue failed
 Oct  2 02:05:03 edge /kernel: ad4: timeout sending command=ef s=c0 e=04
 Oct  2 02:05:03 edge /kernel: ad4: failed setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: ad4: using PIO mode set by BIOS
 Oct  2 02:05:03 edge /kernel: ad4: trying fallback to PIO mode
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=c0
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: READ command timeout tag=1 serv=1 -
 resetting
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: WRITE command timeout tag=0 serv=0 -
 resettin
 g
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: WRITE command timeout tag=0 serv=0 -
 resettin
 g
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: ad4: trying fallback to PIO mode
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=50
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for DRQad4:
 invalidating queu
 ed requests
 Oct  2 02:05:03 edge /kernel: - resetting
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for DRQad4:
 invalidating queu
 ed requests
 Oct  2 02:05:03 edge /kernel: - resetting
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for DRQad4:
 invalidating queu
 ed requests
 Oct  2 02:05:03 edge /kernel: - resetting
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for DRQad4:
 invalidating queu
 ed requests
 Oct  2 02:05:03 edge /kernel: - resetting
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for DRQad4:
 invalidating queu
 ed requests
 Oct  2 02:05:03 edge /kernel: - resetting
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for DRQad4:
 invalidating queu
 ed requests
 Oct  2 02:05:03 edge /kernel: - resetting
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for DRQad4:
 invalidating queu
 ed requests
 Oct  2 02:05:03 edge /kernel: - resetting
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:03 edge /kernel: ad4: timeout waiting for DRQad4:
 invalidating queu
 ed requests
 Oct  2 02:05:03 edge /kernel: - resetting
 Oct  2 02:05:03 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=51
  ostat2=00
 Oct  2 02:05:03 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:03 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:03 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:03 edge /kernel: ata2: devices=01
 Oct  2 02:05:03 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:03 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:03 edge /kernel: done
 Oct  2 02:05:11 edge /kernel: ad4: READ command timeout tag=0 serv=1 -
 resetting
 Oct  2 02:05:11 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=50
  ostat2=00
 Oct  2 02:05:11 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:11 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:11 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:11 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:11 edge /kernel: ata2: devices=01
 Oct  2 02:05:11 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:11 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:11 edge /kernel: done
 Oct  2 02:05:11 edge /kernel: ad4: READ command timeout tag=1 serv=1 -
 resetting
 Oct  2 02:05:11 edge /kernel: ata2: resetting devices .. ata2: mask=03
 ostat0=50
  ostat2=00
 Oct  2 02:05:11 edge /kernel: ad4: ATAPI 00 00
 Oct  2 02:05:11 edge /kernel: ata2-slave: ATAPI 00 00
 Oct  2 02:05:11 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Oct  2 02:05:11 edge /kernel: ad4: ATA 01 a5
 Oct  2 02:05:11 edge /kernel: ata2: devices=01
 Oct  2 02:05:11 edge /kernel: ad4: invalidating queued requests
 Oct  2 02:05:11 edge /kernel: ad4: success setting PIO4 on generic chip
 Oct  2 02:05:11 edge /kernel: done
 
 -- 
 Andriy Gapon
 *
 Hang on tightly, let go lightly.
 

From: Andriy Gapon <agapon@excite.com>
To: freebsd-gnats-submit@FreeBSD.org
Cc: sos@FreeBSD.org
Subject: Re: kern/43217: ata: strange fallback to PIO mode
Date: Wed, 23 Oct 2002 17:15:59 -0400 (EDT)

 new observation: problem seems to have gone after I disabled "Power down
 afer XXX minutes of inactivity" BIOS option for my hard drive.
 
 -- 
 Andriy Gapon
 *
 "Never try to outstubborn a cat." Lazarus Long, "Time Enough for Love"
 

From: Andriy Gapon <agapon@cv-nj.com>
To: freebsd-gnats-submit@FreeBSD.org
Cc:  
Subject: Re: kern/43217: ata: strange fallback to PIO mode
Date: Mon, 17 Feb 2003 14:09:06 -0500 (EST)

 Problem with the same disk again, but on a different controler and under a
 heavy disk load:
 
 > uname -a
 
 FreeBSD edge.foundation.invalid 4.7-RELEASE-p3 FreeBSD 4.7-RELEASE-p3 #0:
 Mon Feb  3 00:42:39 EST 2003
 avg@edge.foundation.invalid:/sys-devel/obj/sys-devel/src/sys/EDGE  i386
 
 > dmesg | fgrep ata
 
 atapci0: <Intel PIIX4 ATA33 controller> port 0xf000-0xf00f at device 7.1
 on pci0
 ata0: iobase=0x01f0 altiobase=0x03f6 bmaddr=0xf000
 ata0: mask=03 ostat0=50 ostat2=00
 ata0-master: ATAPI 00 00
 ata0-slave: ATAPI 00 00
 ata0: mask=03 stat0=50 stat1=00
 ata0-master: ATA 01 a5
 ata0: devices=01
 ata0: at 0x1f0 irq 14 on atapci0
 ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0xf008
 ata1: mask=03 ostat0=50 ostat2=50
 ata1-master: ATAPI 14 eb
 ata1-slave: ATAPI 14 eb
 ata1: mask=03 stat0=00 stat1=00
 ata1: devices=0c
 ata1: at 0x170 irq 15 on atapci0
 atapci1: <Promise TX2 ATA100 controller> port
 0xe400-0xe40f,0xe000-0xe003,0xdc00-0xdc07,0xd800-0xd803,0xd400-0xd407 mem
 0xdb000000-0xdb003fff irq 11 at device 9.0 on pci0
 ata-: ata2 exists, using next available unit number
 ata2: iobase=0xd400 altiobase=0xd802 bmaddr=0xe400
 ata2: mask=03 ostat0=50 ostat2=00
 ata2-master: ATAPI 00 00
 ata2-slave: ATAPI 00 00
 ata2: mask=03 stat0=50 stat1=00
 ata2-master: ATA 01 a5
 ata2: devices=01
 ata2: at 0xd400 on atapci1
 ata3: iobase=0xdc00 altiobase=0xe002 bmaddr=0xe408
 ata3: mask=03 ostat0=20 ostat2=30
 ata3-master: ATAPI 20 20
 ata3-slave: ATAPI 30 30
 ata3: mask=03 stat0=20 stat1=30
 ata3-master: ATA 25 25
 ata3-slave: ATA 25 25
 ata3: devices=00
 ata3: at 0xdc00 on atapci1
 ad0: <SAMSUNG SV0844D/KU100> ATA-3 disk at ata0-master
 ad4: <IC35L060AVVA07-0/VA3OA52A> ATA-5 disk at ata2-master
 ata1-master: piomode=4 dmamode=2 udmamode=2 dmaflag=1
 ata1-master: success setting UDMA2 on Intel chip
 acd0: <LITE-ON LTR-40125W/WS03> CD-RW drive at ata1 as master
 ata1-slave: piomode=4 dmamode=2 udmamode=2 dmaflag=1
 ata1-slave: success setting UDMA2 on Intel chip
 acd1: <TOSHIBA DVD-ROM SD-M1212/1R14> DVD-ROM drive at ata1 as slave
 
 > sysctl -a | fgrep ata
 
 hw.ata.ata_dma: 1
 hw.ata.wc: 1
 hw.ata.tags: 1
 hw.ata.atapi_dma: 1
 
 > problem log:
 
 Feb 17 13:38:37 edge /kernel: ad4: READ command timeout tag=0 serv=2 - resetting
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ata2: resetting devices .. ata2: mask=03 ostat0=51 ostat2=00
 Feb 17 13:39:28 edge /kernel: ad4: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2-slave: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Feb 17 13:39:28 edge /kernel: ad4: ATA 01 a5
 Feb 17 13:39:28 edge /kernel: ata2: devices=01
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Feb 17 13:39:28 edge /kernel: done
 Feb 17 13:39:28 edge /kernel: ad4: no request for tag=0
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: READ command timeout tag=0 serv=2 - resetting
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: timeout waiting for cmd=00 s=c0 e=04
 Feb 17 13:39:28 edge /kernel: ad4: flush queue failed
 Feb 17 13:39:28 edge /kernel: ata2: resetting devices .. ata2: mask=03 ostat0=c0 ostat2=00
 Feb 17 13:39:28 edge /kernel: ad4: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2-slave: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Feb 17 13:39:28 edge /kernel: ad4: ATA 01 a5
 Feb 17 13:39:28 edge /kernel: ata2: devices=01
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Feb 17 13:39:28 edge /kernel: done
 Feb 17 13:39:28 edge /kernel: ad4: WRITE command timeout tag=3 serv=0 - resetting
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ata2: resetting devices .. ata2: mask=03 ostat0=51 ostat2=00
 Feb 17 13:39:28 edge /kernel: ad4: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2-slave: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Feb 17 13:39:28 edge /kernel: ad4: ATA 01 a5
 Feb 17 13:39:28 edge /kernel: ata2: devices=01
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Feb 17 13:39:28 edge /kernel: done
 Feb 17 13:39:28 edge /kernel: ad4: READ command timeout tag=0 serv=2 - resetting
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: timeout waiting for cmd=00 s=c0 e=04
 Feb 17 13:39:28 edge /kernel: ad4: flush queue failed
 Feb 17 13:39:28 edge /kernel: ata2: resetting devices .. ata2: mask=03 ostat0=c0 ostat2=00
 Feb 17 13:39:28 edge /kernel: ad4: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2-slave: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Feb 17 13:39:28 edge /kernel: ad4: ATA 01 a5
 Feb 17 13:39:28 edge /kernel: ata2: devices=01
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Feb 17 13:39:28 edge /kernel: done
 Feb 17 13:39:28 edge /kernel: ad4: WRITE command timeout tag=3 serv=0 - resetting
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ata2: resetting devices .. ata2: mask=03 ostat0=51 ostat2=00
 Feb 17 13:39:28 edge /kernel: ad4: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2-slave: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Feb 17 13:39:28 edge /kernel: ad4: ATA 01 a5
 Feb 17 13:39:28 edge /kernel: ata2: devices=01
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: success setting UDMA5 on Promise chip
 Feb 17 13:39:28 edge /kernel: done
 Feb 17 13:39:28 edge /kernel: ad4: READ command timeout tag=0 serv=2 - resetting
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: timeout waiting for cmd=00 s=c0 e=04
 Feb 17 13:39:28 edge /kernel: ad4: flush queue failed
 Feb 17 13:39:28 edge /kernel: ad4: timeout sending command=ef s=c0 e=04
 Feb 17 13:39:28 edge /kernel: ad4: failed setting PIO4 on generic chip
 Feb 17 13:39:28 edge /kernel: ad4: using PIO mode set by BIOS
 Feb 17 13:39:28 edge /kernel: ad4: trying fallback to PIO mode
 Feb 17 13:39:28 edge /kernel: ata2: resetting devices .. ata2: mask=03 ostat0=c0 ostat2=00
 Feb 17 13:39:28 edge /kernel: ad4: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2-slave: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Feb 17 13:39:28 edge /kernel: ad4: ATA 01 a5
 Feb 17 13:39:28 edge /kernel: ata2: devices=01
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: success setting PIO4 on generic chip
 Feb 17 13:39:28 edge /kernel: done
 Feb 17 13:39:28 edge /kernel: ad4: WRITE command timeout tag=3 serv=0 - resetting
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ata2: resetting devices .. ata2: mask=03 ostat0=51 ostat2=00
 Feb 17 13:39:28 edge /kernel: ad4: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2-slave: ATAPI 00 00
 Feb 17 13:39:28 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Feb 17 13:39:28 edge /kernel: ad4: ATA 01 a5
 Feb 17 13:39:28 edge /kernel: ata2: devices=01
 Feb 17 13:39:28 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:28 edge /kernel: ad4: success setting PIO4 on generic chip
 Feb 17 13:39:28 edge /kernel: done
 Feb 17 13:39:38 edge /kernel: ad4: READ command timeout tag=0 serv=2 - resetting
 Feb 17 13:39:38 edge /kernel: ata2: resetting devices .. ata2: mask=03 ostat0=50 ostat2=00
 Feb 17 13:39:38 edge /kernel: ad4: ATAPI 00 00
 Feb 17 13:39:38 edge /kernel: ata2-slave: ATAPI 00 00
 Feb 17 13:39:38 edge /kernel: ata2: mask=03 stat0=50 stat1=00
 Feb 17 13:39:38 edge /kernel: ad4: ATA 01 a5
 Feb 17 13:39:38 edge /kernel: ata2: devices=01
 Feb 17 13:39:38 edge /kernel: ad4: invalidating queued requests
 Feb 17 13:39:38 edge /kernel: ad4: success setting PIO4 on generic chip
 Feb 17 13:39:38 edge /kernel: done
 
 
 Please let me know if there is any test or an experiment that I can stage
 to get more details on this problem. Or any other kind of information.
 I will be more than glad to help in any way. Performance really sucks in
 PIO mode.
 
 -- 
 Andriy Gapon
 
State-Changed-From-To: open->closed 
State-Changed-By: sos 
State-Changed-When: Mon Apr 28 11:52:35 PDT 2003 
State-Changed-Why:  
Since there has been no furhter updates on this I take it 
its no longer a problem ? 

http://www.freebsd.org/cgi/query-pr.cgi?pr=43217 

From: Andriy Gapon <agapon@cv-nj.com>
To: freebsd-gnats-submit@FreeBSD.org
Cc: sos@FreeBSD.org
Subject: Re: kern/43217: ata: strange fallback to PIO mode
Date: Thu, 08 May 2003 15:52:46 -0400 (EDT)

 Sorry for the feedback timeout. Here's an update:
 After disabling tags per your suggestion, the problem went away.
 So it's either something wrong with my HDD or with tags support in the
 driver.
 Should I try to enable tags again (after upgrade to 4.8) or is this
 something to be expected from IBM DeskStar (IC35L060AVVA07-0) ?
 
 -- 
 Andriy Gapon
>Unformatted:
