aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorGreg Lehey <grog@FreeBSD.org>2001-05-22 02:32:22 +0000
committerGreg Lehey <grog@FreeBSD.org>2001-05-22 02:32:22 +0000
commitacac8659d7db9c59871c9a8f5cba350c9b6e4a61 (patch)
tree97ff48c26e15cbb4061b8e23616e6eb0ca6e28a3 /sys/dev
parentab15c118bf077eb6ab4eee81abeff8af8a00dca3 (diff)
Notes
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/vinum/vinumio.c46
1 files changed, 28 insertions, 18 deletions
diff --git a/sys/dev/vinum/vinumio.c b/sys/dev/vinum/vinumio.c
index 584915f6c725..7e102095ff44 100644
--- a/sys/dev/vinum/vinumio.c
+++ b/sys/dev/vinum/vinumio.c
@@ -87,6 +87,9 @@ open_drive(struct drive *drive, struct proc *p, int verbose)
else if (bcmp(dname, "amrd", 4) == 0) {
devmajor = 133;
dname += 2;
+ } else if (bcmp(dname, "mlxd", 4) == 0) {
+ devmajor = 131;
+ dname += 2;
} else if (bcmp(dname, "idad", 4) == 0) {
devmajor = 109;
dname += 2;
@@ -552,28 +555,32 @@ format_config(char *config, int len)
*/
if (drivename[0] == '\0')
drivename = "*invalid*";
+ snprintf(s,
+ configend - s,
+ "sd name %s drive %s plex %s len %llus driveoffset %llus state %s",
+ sd->name,
+ drivename,
+ vinum_conf.plex[sd->plexno].name,
+ (unsigned long long) sd->sectors,
+ (unsigned long long) sd->driveoffset,
+ sd_state(sd->state));
+ while (*s)
+ s++; /* find the end */
if (sd->plexno >= 0)
snprintf(s,
configend - s,
- "sd name %s drive %s plex %s state %s "
- "len %llus driveoffset %llus plexoffset %llds\n",
- sd->name,
- drivename,
- vinum_conf.plex[sd->plexno].name,
- sd_state(sd->state),
- (unsigned long long) sd->sectors,
- (unsigned long long) sd->driveoffset,
+ " plexoffset %llds",
(long long) sd->plexoffset);
else
- snprintf(s,
- configend - s,
- "sd name %s drive %s state %s "
- "len %llus driveoffset %llus detached\n",
- sd->name,
- drivename,
- sd_state(sd->state),
- (unsigned long long) sd->sectors,
- (unsigned long long) sd->driveoffset);
+ snprintf(s, configend - s, " detached");
+ while (*s)
+ s++; /* find the end */
+ if (sd->flags & VF_RETRYERRORS) {
+ snprintf(s, configend - s, " retryerrors");
+ while (*s)
+ s++; /* find the end */
+ }
+ snprintf(s, configend - s, " \n");
while (*s)
s++; /* find the end */
}
@@ -900,7 +907,10 @@ vinum_scandisk(char *devicename[], int drives)
}
if (gooddrives == 0) {
- log(LOG_WARNING, "vinum: no drives found\n");
+ if (firsttime)
+ log(LOG_WARNING, "vinum: no drives found\n");
+ else
+ log(LOG_INFO, "vinum: no additional drives found\n");
return ENOENT;
}
/*