Author: mav
Date: Sun May  2 12:40:54 2010
New Revision: 207503
URL: http://svn.freebsd.org/changeset/base/207503

Log:
  MFC r207221:
  Mark ATA channel as idle on timeout in non-ATA_CAM mode.
  This should fix possible duplicate request completion.

Modified:
  stable/8/sys/dev/ata/ata-queue.c
Directory Properties:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)
  stable/8/sys/geom/sched/   (props changed)

Modified: stable/8/sys/dev/ata/ata-queue.c
==============================================================================
--- stable/8/sys/dev/ata/ata-queue.c    Sun May  2 12:39:29 2010        
(r207502)
+++ stable/8/sys/dev/ata/ata-queue.c    Sun May  2 12:40:54 2010        
(r207503)
@@ -513,9 +513,9 @@ ata_timeout(struct ata_request *request)
        request->flags |= ATA_R_TIMEOUT;
        if (ch->dma.unload)
            ch->dma.unload(request);
-#ifdef ATA_CAM
        ch->running = NULL;
        ch->state = ATA_IDLE;
+#ifdef ATA_CAM
        ata_cam_end_transaction(ch->dev, request);
 #endif
        mtx_unlock(&ch->state_mtx);
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to