mdstat: discard 'dev' field, just use 'devnm'

These both have the same value, and have done since the
'devnm' concept was introduced.
So discard the pointless duplicate.

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2015-07-02 08:15:10 +10:00
parent caf9ac0ca4
commit 9581efb1ae
8 changed files with 17 additions and 20 deletions

View File

@ -1726,7 +1726,7 @@ int IncrementalRemove(char *devname, char *id_path, int verbose)
mdfd = open_dev(ent->devnm); mdfd = open_dev(ent->devnm);
if (mdfd < 0) { if (mdfd < 0) {
if (verbose >= 0) if (verbose >= 0)
pr_err("Cannot open array %s!!\n", ent->dev); pr_err("Cannot open array %s!!\n", ent->devnm);
free_mdstat(ent); free_mdstat(ent);
return 1; return 1;
} }
@ -1748,11 +1748,11 @@ int IncrementalRemove(char *devname, char *id_path, int verbose)
struct mdstat_ent *mdstat = mdstat_read(0, 0); struct mdstat_ent *mdstat = mdstat_read(0, 0);
struct mdstat_ent *memb; struct mdstat_ent *memb;
for (memb = mdstat ; memb ; memb = memb->next) for (memb = mdstat ; memb ; memb = memb->next)
if (is_container_member(memb, ent->dev)) { if (is_container_member(memb, ent->devnm)) {
int subfd = open_dev(memb->devnm); int subfd = open_dev(memb->devnm);
if (subfd >= 0) { if (subfd >= 0) {
rv |= Manage_subdevs( rv |= Manage_subdevs(
memb->dev, subfd, memb->devnm, subfd,
&devlist, verbose, 0, &devlist, verbose, 0,
NULL, 0); NULL, 0);
close(subfd); close(subfd);
@ -1760,7 +1760,7 @@ int IncrementalRemove(char *devname, char *id_path, int verbose)
} }
free_mdstat(mdstat); free_mdstat(mdstat);
} else } else
rv |= Manage_subdevs(ent->dev, mdfd, &devlist, rv |= Manage_subdevs(ent->devnm, mdfd, &devlist,
verbose, 0, NULL, 0); verbose, 0, NULL, 0);
if (rv & 2) { if (rv & 2) {
/* Failed due to EBUSY, try to stop the array. /* Failed due to EBUSY, try to stop the array.
@ -1768,7 +1768,7 @@ int IncrementalRemove(char *devname, char *id_path, int verbose)
*/ */
int devid = devnm2devid(ent->devnm); int devid = devnm2devid(ent->devnm);
run_udisks("--unmount", map_dev(major(devid),minor(devid), 0)); run_udisks("--unmount", map_dev(major(devid),minor(devid), 0));
rv = Manage_stop(ent->dev, mdfd, verbose, 1); rv = Manage_stop(ent->devnm, mdfd, verbose, 1);
if (rv) if (rv)
/* At least we can try to trigger a 'remove' */ /* At least we can try to trigger a 'remove' */
sysfs_uevent(&mdi, "remove"); sysfs_uevent(&mdi, "remove");
@ -1778,7 +1778,7 @@ int IncrementalRemove(char *devname, char *id_path, int verbose)
} }
} else { } else {
devlist.disposition = 'r'; devlist.disposition = 'r';
rv = Manage_subdevs(ent->dev, mdfd, &devlist, rv = Manage_subdevs(ent->devnm, mdfd, &devlist,
verbose, 0, NULL, 0); verbose, 0, NULL, 0);
} }
close(mdfd); close(mdfd);

View File

@ -316,7 +316,7 @@ int Manage_stop(char *devname, int fd, int verbose, int will_retry)
devnm)) { devnm)) {
if (verbose >= 0) if (verbose >= 0)
pr_err("Cannot stop container %s: member %s still active\n", pr_err("Cannot stop container %s: member %s still active\n",
devname, m->dev); devname, m->devnm);
free_mdstat(mds); free_mdstat(mds);
rv = 1; rv = 1;
goto out; goto out;

View File

@ -167,10 +167,10 @@ struct mddev_dev *load_containers(void)
!is_subarray(&ent->metadata_version[9])) { !is_subarray(&ent->metadata_version[9])) {
d = xmalloc(sizeof(*d)); d = xmalloc(sizeof(*d));
memset(d, 0, sizeof(*d)); memset(d, 0, sizeof(*d));
me = map_by_devnm(&map, ent->dev); me = map_by_devnm(&map, ent->devnm);
if (me) if (me)
d->devname = xstrdup(me->path); d->devname = xstrdup(me->path);
else if (asprintf(&d->devname, "/dev/%s", ent->dev) < 0) { else if (asprintf(&d->devname, "/dev/%s", ent->devnm) < 0) {
free(d); free(d);
continue; continue;
} }

View File

@ -1675,7 +1675,7 @@ static int misc_scan(char devmode, struct context *c)
if (!name) { if (!name) {
pr_err("cannot find device file for %s\n", pr_err("cannot find device file for %s\n",
e->dev); e->devnm);
continue; continue;
} }
if (devmode == 'D') if (devmode == 'D')
@ -1710,7 +1710,7 @@ static int stop_scan(int verbose)
if (!name) { if (!name) {
pr_err("cannot find device file for %s\n", pr_err("cannot find device file for %s\n",
e->dev); e->devnm);
continue; continue;
} }
mdfd = open_mddev(name, 1); mdfd = open_mddev(name, 1);

View File

@ -453,7 +453,6 @@ typedef struct mapping {
} mapping_t; } mapping_t;
struct mdstat_ent { struct mdstat_ent {
char *dev;
char devnm[32]; char devnm[32];
int active; int active;
char *level; char *level;

View File

@ -114,7 +114,6 @@ void free_mdstat(struct mdstat_ent *ms)
{ {
while (ms) { while (ms) {
struct mdstat_ent *t; struct mdstat_ent *t;
free(ms->dev);
free(ms->level); free(ms->level);
free(ms->pattern); free(ms->pattern);
free(ms->metadata_version); free(ms->metadata_version);
@ -169,7 +168,7 @@ struct mdstat_ent *mdstat_read(int hold, int start)
strcpy(devnm, line); strcpy(devnm, line);
ent = xmalloc(sizeof(*ent)); ent = xmalloc(sizeof(*ent));
ent->dev = ent->level = ent->pattern= NULL; ent->level = ent->pattern= NULL;
ent->next = NULL; ent->next = NULL;
ent->percent = RESYNC_NONE; ent->percent = RESYNC_NONE;
ent->active = -1; ent->active = -1;
@ -179,7 +178,6 @@ struct mdstat_ent *mdstat_read(int hold, int start)
ent->devcnt = 0; ent->devcnt = 0;
ent->members = NULL; ent->members = NULL;
ent->dev = xstrdup(line);
strcpy(ent->devnm, devnm); strcpy(ent->devnm, devnm);
for (w=dl_next(line); w!= line ; w=dl_next(w)) { for (w=dl_next(line); w!= line ; w=dl_next(w)) {

4
msg.c
View File

@ -395,7 +395,7 @@ int block_monitor(char *container, const int freeze)
sysfs_free(sra); sysfs_free(sra);
sra = sysfs_read(-1, e2->devnm, GET_VERSION); sra = sysfs_read(-1, e2->devnm, GET_VERSION);
if (unblock_subarray(sra, freeze)) if (unblock_subarray(sra, freeze))
pr_err("Failed to unfreeze %s\n", e2->dev); pr_err("Failed to unfreeze %s\n", e2->devnm);
} }
ping_monitor(container); /* cleared frozen */ ping_monitor(container); /* cleared frozen */
@ -431,7 +431,7 @@ void unblock_monitor(char *container, const int unfreeze)
if (sra->array.level > 0) if (sra->array.level > 0)
to_ping++; to_ping++;
if (unblock_subarray(sra, unfreeze)) if (unblock_subarray(sra, unfreeze))
pr_err("Failed to unfreeze %s\n", e->dev); pr_err("Failed to unfreeze %s\n", e->devnm);
} }
if (to_ping) if (to_ping)
ping_monitor(container); ping_monitor(container);

View File

@ -5585,15 +5585,15 @@ active_arrays_by_format(char *name, char* hba, struct md_list **devlist,
for (vol = mdstat ; vol ; vol = vol->next) { for (vol = mdstat ; vol ; vol = vol->next) {
if ((vol->active > 0) && if ((vol->active > 0) &&
vol->metadata_version && vol->metadata_version &&
is_container_member(vol, memb->dev)) { is_container_member(vol, memb->devnm)) {
found++; found++;
count++; count++;
} }
} }
if (*devlist && (found < dpa)) { if (*devlist && (found < dpa)) {
dv = xcalloc(1, sizeof(*dv)); dv = xcalloc(1, sizeof(*dv));
dv->devname = xmalloc(strlen(memb->dev) + strlen("/dev/") + 1); dv->devname = xmalloc(strlen(memb->devnm) + strlen("/dev/") + 1);
sprintf(dv->devname, "%s%s", "/dev/", memb->dev); sprintf(dv->devname, "%s%s", "/dev/", memb->devnm);
dv->found = found; dv->found = found;
dv->used = 0; dv->used = 0;
dv->next = *devlist; dv->next = *devlist;