summaryrefslogtreecommitdiff
path: root/sys/dev/ata/ata-raid.c
diff options
context:
space:
mode:
authorSøren Schmidt <sos@FreeBSD.org>2002-03-07 19:20:23 +0000
committerSøren Schmidt <sos@FreeBSD.org>2002-03-07 19:20:23 +0000
commitc1d33c30e9cbbef8624a8c8e8096588576cec081 (patch)
treeecfb819b4f6aaf2e54caccce908792ade1f73dbf /sys/dev/ata/ata-raid.c
parentf43890bcb9b3f24986e56fec73f3b12ab24879f8 (diff)
Notes
Diffstat (limited to 'sys/dev/ata/ata-raid.c')
-rw-r--r--sys/dev/ata/ata-raid.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/dev/ata/ata-raid.c b/sys/dev/ata/ata-raid.c
index 51f2657ab697..5724fab5b9c7 100644
--- a/sys/dev/ata/ata-raid.c
+++ b/sys/dev/ata/ata-raid.c
@@ -583,7 +583,7 @@ ar_rebuild(struct ar_softc *rdp)
buffer = malloc(256 * DEV_BSIZE, M_AR, M_NOWAIT | M_ZERO);
/* now go copy entire disk(s) */
- while (rdp->lock_start < (rdp->total_sectors / rdp->width)) {
+ while (rdp->lock_end < (rdp->total_sectors / rdp->width)) {
int size = min(256, (rdp->total_sectors / rdp->width) - rdp->lock_end);
for (disk = 0; disk < rdp->width; disk++) {
@@ -1177,9 +1177,9 @@ ar_rw(struct ad_softc *adp, u_int32_t lba, int count, caddr_t data, int flags)
bp->bio_done = ar_rw_done;
AR_STRATEGY(bp);
if (flags & AR_WAIT) {
- error = tsleep(bp, PRIBIO, "arrw", 10 * hz);
- if (!error && bp->b_flags & B_ERROR)
- error = bp->b_error;
+ error = tsleep(bp, PRIBIO, "arrw", 0);
+ if (!error && bp->bio_flags & BIO_ERROR)
+ error = bp->bio_error;
free(bp, M_AR);
}
return error;