summaryrefslogtreecommitdiffstats
path: root/sys/dev/aac/aac_disk.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2002-09-20 12:52:03 +0000
committerphk <phk@FreeBSD.org>2002-09-20 12:52:03 +0000
commit1919170e9039df45d87abbe1d7b256cc0db1ed19 (patch)
tree1d367b627ceceea40420446ef7bb5ef0ae17c419 /sys/dev/aac/aac_disk.c
parentb003f2381fcadb1c640d68a8885d0a806a0e8d9c (diff)
downloadFreeBSD-src-1919170e9039df45d87abbe1d7b256cc0db1ed19.zip
FreeBSD-src-1919170e9039df45d87abbe1d7b256cc0db1ed19.tar.gz
Make FreeBSD "struct disklabel" agnostic, step 311 of 723:
Rename diskerr() to disk_err() for naming consistency. Drop the by now entirely useless struct disklabel argument. Add a flag argument for new-line termination. Fix a couple of printf-format-casts to %j instead of %l. Correctly print the name of all bio commands. Move the function from subr_disklabel.c to subr_disk.c, and from <sys/disklabel.h> to <sys/disk.h>. Use the new disk_err() throughout, #include <sys/disk.h> as needed. Bump __FreeBSD_version for the sake of the aac disk drivers #ifdefs. Remove unused disklabel members of softc for aac, amr and mlx, which seem to originally have been intended for diskerr() use, but which only rotted and got Copy&Pasted at least two times to many. Sponsored by: DARPA & NAI Labs.
Diffstat (limited to 'sys/dev/aac/aac_disk.c')
-rw-r--r--sys/dev/aac/aac_disk.c8
1 files changed, 6 insertions, 2 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
}
OpenPOWER on IntegriCloud