diff options
author | NeilBrown <neilb@suse.de> | 2010-11-22 09:35:25 +0100 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2010-11-22 09:35:25 +0100 |
commit | feab51f8f710f28a63a5b01ec59a5a609a45525b (patch) | |
tree | a12fafbfb76d636720f869a394051eb972609988 /util.c | |
parent | ddf: remove duplicate container_member setting. (diff) | |
download | mdadm-feab51f8f710f28a63a5b01ec59a5a609a45525b.tar.xz mdadm-feab51f8f710f28a63a5b01ec59a5a609a45525b.zip |
open_subarray: pass subarray name as explicit arg.
Rather than hiding this arg in the 'st' structure, pass it explicitly.
This is a first step to getting rid of 'subarray' from 'supertype'.
The strcpy in open_subarray should have better error checking, but it
will disappear soon so there is little point.
Signed-off-by: NeilBrown <neilb@suse.de.
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 6 |
1 files changed, 4 insertions, 2 deletions
@@ -1441,12 +1441,12 @@ int is_container_active(char *container) /* open_subarray - opens a subarray in a container * @dev: container device name - * @st: supertype with only ->subarray set + * @st: empty supertype * @quiet: block reporting errors flag * * On success returns an fd to a container and fills in *st */ -int open_subarray(char *dev, struct supertype *st, int quiet) +int open_subarray(char *dev, char *subarray, struct supertype *st, int quiet) { struct mdinfo *mdi; int fd, err = 1; @@ -1498,6 +1498,8 @@ int open_subarray(char *dev, struct supertype *st, int quiet) goto free_sysfs; } + strncpy(st->subarray, subarray, sizeof(st->subarray)-1); + if (st->ss->load_super(st, fd, NULL)) { if (!quiet) fprintf(stderr, Name ": Failed to find subarray-%s in %s\n", |