diff options
Diffstat (limited to 'sys/dev/aac')
-rw-r--r-- | sys/dev/aac/aac_disk.c | 8 | ||||
-rw-r--r-- | sys/dev/aac/aacvar.h | 1 |
2 files changed, 6 insertions, 3 deletions
diff --git a/sys/dev/aac/aac_disk.c b/sys/dev/aac/aac_disk.c index 000d841..91ceee0 100644 --- a/sys/dev/aac/aac_disk.c +++ b/sys/dev/aac/aac_disk.c @@ -305,7 +305,6 @@ void aac_biodone(struct bio *bp) { struct aac_disk *sc; - int blkno; debug_called(4); @@ -313,10 +312,15 @@ aac_biodone(struct bio *bp) devstat_end_transaction_bio(&sc->ad_stats, bp); if (bp->bio_flags & BIO_ERROR) { +#if __FreeBSD_version > 500039 + disk_err(bp, "hard error", -1, 1); +#elif __FreeBSD_version > 500005 + int blkno; blkno = (sc->ad_label.d_nsectors) ? 0 : -1; -#if __FreeBSD_version > 500005 diskerr(bp, (char *)bp->bio_driver1, blkno, &sc->ad_label); #else + int blkno; + blkno = (sc->ad_label.d_nsectors) ? 0 : -1; diskerr(bp, (char *)bp->bio_driver1, 0, blkno, &sc->ad_label); #endif } diff --git a/sys/dev/aac/aacvar.h b/sys/dev/aac/aacvar.h index d82f29e..0f615f1 100644 --- a/sys/dev/aac/aacvar.h +++ b/sys/dev/aac/aacvar.h @@ -120,7 +120,6 @@ struct aac_disk struct aac_container *ad_container; struct disk ad_disk; struct devstat ad_stats; - struct disklabel ad_label; int ad_flags; #define AAC_DISK_OPEN (1<<0) int ad_cylinders; |