diff options
author | NeilBrown <neilb@suse.de> | 2008-12-18 06:56:13 +0100 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2008-12-18 06:56:13 +0100 |
commit | 8a659c33212f85cc0dcecc759b7b36b0bb2b4fe4 (patch) | |
tree | 8c09f1ce1ab41c6218a0e4705e3227bc7b7c022b /Incremental.c | |
parent | DDF: improve --examine output (diff) | |
parent | map: rebuild map if it doesn't exist. (diff) | |
download | mdadm-8a659c33212f85cc0dcecc759b7b36b0bb2b4fe4.tar.xz mdadm-8a659c33212f85cc0dcecc759b7b36b0bb2b4fe4.zip |
Merge branch 'master' into devel-3.0
Conflicts:
Assemble.c
Incremental.c
Kill.c
ReadMe.c
inventory
mapfile.c
mdadm.8
mdadm.spec
mdassemble.8
Diffstat (limited to 'Incremental.c')
-rw-r--r-- | Incremental.c | 53 |
1 files changed, 0 insertions, 53 deletions
diff --git a/Incremental.c b/Incremental.c index 474f78d6..43b1f776 100644 --- a/Incremental.c +++ b/Incremental.c @@ -596,59 +596,6 @@ static int count_active(struct supertype *st, int mdfd, char **availp, return cnt + cnt1; } -void RebuildMap(void) -{ - struct mdstat_ent *mdstat = mdstat_read(0, 0); - struct mdstat_ent *md; - struct map_ent *map = NULL; - int mdp = get_mdp_major(); - - for (md = mdstat ; md ; md = md->next) { - struct mdinfo *sra = sysfs_read(-1, md->devnum, GET_DEVS); - struct mdinfo *sd; - - for (sd = sra->devs ; sd ; sd = sd->next) { - char dn[30]; - int dfd; - int ok; - struct supertype *st; - char *path; - struct mdinfo info; - - sprintf(dn, "%d:%d", sd->disk.major, sd->disk.minor); - dfd = dev_open(dn, O_RDONLY); - if (dfd < 0) - continue; - st = guess_super(dfd); - if ( st == NULL) - ok = -1; - else - ok = st->ss->load_super(st, dfd, NULL); - close(dfd); - if (ok != 0) - continue; - st->ss->getinfo_super(st, &info); - if (md->devnum > 0) - path = map_dev(MD_MAJOR, md->devnum, 0); - else - path = map_dev(mdp, (-1-md->devnum)<< 6, 0); - map_add(&map, md->devnum, - info.text_version, - info.uuid, path ? : "/unknown"); - st->ss->free_super(st); - break; - } - sysfs_free(sra); - } - map_write(map); - map_free(map); - for (md = mdstat ; md ; md = md->next) { - struct mdinfo *sra = sysfs_read(-1, md->devnum, GET_VERSION); - sysfs_uevent(sra, "change"); - sysfs_free(sra); - } -} - int IncrementalScan(int verbose) { /* look at every device listed in the 'map' file. |