summaryrefslogtreecommitdiffstats
path: root/sys/dev/ata/ata-raid.c
diff options
context:
space:
mode:
authorsos <sos@FreeBSD.org>2001-01-04 09:11:00 +0000
committersos <sos@FreeBSD.org>2001-01-04 09:11:00 +0000
commit9e93a7456b2c4850370b24d3b7bd9ee0f7d29d8d (patch)
treedb64374de629e45c3390b885b621e0965d7ae6b6 /sys/dev/ata/ata-raid.c
parentff1c47a0de76c7602c13917d597343f5f25edeff (diff)
downloadFreeBSD-src-9e93a7456b2c4850370b24d3b7bd9ee0f7d29d8d.zip
FreeBSD-src-9e93a7456b2c4850370b24d3b7bd9ee0f7d29d8d.tar.gz
Proberly calculate the RAID structure on the Promise Fasttrak.
Diffstat (limited to 'sys/dev/ata/ata-raid.c')
-rw-r--r--sys/dev/ata/ata-raid.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/ata/ata-raid.c b/sys/dev/ata/ata-raid.c
index d361e45..85123aa 100644
--- a/sys/dev/ata/ata-raid.c
+++ b/sys/dev/ata/ata-raid.c
@@ -428,7 +428,8 @@ ar_promise_conf(struct ad_softc *adp, struct ar_softc **raidp)
u_int32_t cksum, *ckptr;
int count, disk_number, array;
- lba = adp->total_secs - adp->sectors;
+ lba = ((adp->total_secs / (adp->heads * adp->sectors)) *
+ adp->heads * adp->sectors) - adp->sectors;
if (ar_read(adp, lba, 4 * DEV_BSIZE, (char *)&info)) {
if (bootverbose)
OpenPOWER on IntegriCloud