summaryrefslogtreecommitdiffstats
path: root/sysfs.c
diff options
context:
space:
mode:
authorNeil Brown <neilb@suse.de>2007-12-14 20:15:21 +1100
committerNeil Brown <neilb@suse.de>2007-12-14 20:15:21 +1100
commit142cb9e181b876b399c548567dad5e011ff3d0dc (patch)
treeeffbfda1f601ce426be1d1c48652aefa6c21ae3b /sysfs.c
parent7e0f69790c47b21c4aa7636a4b05925687c80a6e (diff)
downloadmdadm-142cb9e181b876b399c548567dad5e011ff3d0dc.tar.gz
mdadm-142cb9e181b876b399c548567dad5e011ff3d0dc.tar.xz
mdadm-142cb9e181b876b399c548567dad5e011ff3d0dc.zip
Use sysfs info for metadata version info in Detail and elsewhere.
Diffstat (limited to 'sysfs.c')
-rw-r--r--sysfs.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sysfs.c b/sysfs.c
index f198d16..03b09fd 100644
--- a/sysfs.c
+++ b/sysfs.c
@@ -106,7 +106,11 @@ struct mdinfo *sysfs_read(int fd, int devnum, unsigned long options)
if (strncmp(buf, "none", 4) == 0)
sra->array.major_version =
sra->array.minor_version = -1;
- else
+ else if (strncmp(buf, "external:", 9) == 0) {
+ sra->array.major_version = -1;
+ sra->array.minor_version = -2;
+ strcpy(sra->text_version, buf+9);
+ } else
sscanf(buf, "%d.%d",
&sra->array.major_version,
&sra->array.minor_version);