X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fmdadm.git;a=blobdiff_plain;f=util.c;h=53c21e3d4369c3ad6346e91760e6206567bf8753;hp=927a0ee432ecbb04c56c60906ce202cbba7be059;hb=1e5c69836d4d0b6dcaef8fc187e6bf2841eb57f6;hpb=2904b26f059c5d82d9d631c9987e92e3f9af498c diff --git a/util.c b/util.c index 927a0ee4..53c21e3d 100644 --- a/util.c +++ b/util.c @@ -1210,6 +1210,21 @@ int set_array_info(int mdfd, struct supertype *st, struct mdinfo *info) return rv; } +unsigned long long min_recovery_start(struct mdinfo *array) +{ + /* find the minimum recovery_start in an array for metadata + * formats that only record per-array recovery progress instead + * of per-device + */ + unsigned long long recovery_start = MaxSector; + struct mdinfo *d; + + for (d = array->devs; d; d = d->next) + recovery_start = min(recovery_start, d->recovery_start); + + return recovery_start; +} + char *devnum2devname(int num) { char name[100];