Module Name: src
Committed By: jakllsch
Date: Sun Jul 22 18:37:31 UTC 2012
Modified Files:
src/sys/dev/ata: wd.c
Log Message:
ATA-6 and ACS-2 drafts both say the flush cache commands may take longer than
30 seconds to complete. For now assume 5 minutes will always be enough.
To generate a diff of this commit:
cvs rdiff -u -r1.395 -r1.396 src/sys/dev/ata/wd.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/ata/wd.c
diff -u src/sys/dev/ata/wd.c:1.395 src/sys/dev/ata/wd.c:1.396
--- src/sys/dev/ata/wd.c:1.395 Sun Jul 15 10:55:29 2012
+++ src/sys/dev/ata/wd.c Sun Jul 22 18:37:31 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: wd.c,v 1.395 2012/07/15 10:55:29 dsl Exp $ */
+/* $NetBSD: wd.c,v 1.396 2012/07/22 18:37:31 jakllsch Exp $ */
/*
* Copyright (c) 1998, 2001 Manuel Bouyer. All rights reserved.
@@ -54,7 +54,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: wd.c,v 1.395 2012/07/15 10:55:29 dsl Exp $");
+__KERNEL_RCSID(0, "$NetBSD: wd.c,v 1.396 2012/07/22 18:37:31 jakllsch Exp $");
#include "opt_ata.h"
@@ -1913,7 +1913,7 @@ wd_flushcache(struct wd_softc *wd, int f
ata_c.r_st_bmask = WDCS_DRDY;
ata_c.r_st_pmask = WDCS_DRDY;
ata_c.flags = flags;
- ata_c.timeout = 30000; /* 30s timeout */
+ ata_c.timeout = 300000; /* 5m timeout */
if (wd->atabus->ata_exec_command(wd->drvp, &ata_c) != ATACMD_COMPLETE) {
aprint_error_dev(wd->sc_dev,
"flush cache command didn't complete\n");