int active, working, failed, spare, raid;
int expected_spares;
int devstate[MaxDisks];
- unsigned devid[MaxDisks];
+ dev_t devid[MaxDisks];
int percent;
int parent_dev; /* For subarray, devnum of parent.
* For others, NoMdDev
}
static int move_spare(struct state *from, struct state *to,
- int devid,
+ dev_t devid,
struct alert_info *info)
{
struct mddev_dev devlist;
return 1;
}
-static int choose_spare(struct state *from, struct state *to,
+static dev_t choose_spare(struct state *from, struct state *to,
struct domainlist *domlist)
{
int d;
- int dev = 0;
+ dev_t dev = 0;
unsigned long long min_size
= min_spare_size_required(to);
return dev;
}
-static int container_choose_spare(struct state *from, struct state *to,
+static dev_t container_choose_spare(struct state *from, struct state *to,
struct domainlist *domlist)
{
/* This is similar to choose_spare, but we cannot trust devstate,
struct mdinfo *disks, *d;
unsigned long long min_size
= min_spare_size_required(to);
- int dev;
+ dev_t dev = 0;
if (fd < 0)
return 0;
domain_add(&domlist, to->spare_group);
for (from=statelist ; from ; from=from->next) {
- int devid;
+ dev_t devid;
if (!check_donor(from, to, domlist))
continue;
if (from->metadata->ss->external)
extern struct supertype *dup_super(struct supertype *st);
extern int get_dev_size(int fd, char *dname, unsigned long long *sizep);
extern int must_be_container(int fd);
-extern int dev_size_from_id(unsigned id, unsigned long long *size);
+extern int dev_size_from_id(dev_t id, unsigned long long *size);
extern void get_one_disk(int mdfd, mdu_array_info_t *ainf,
mdu_disk_info_t *disk);
void wait_for(char *dev, int fd);