--- mdadm-2.5.1/Monitor.c Thu Jun 1 21:33:41 2006 +++ mdadm-2.5.1-new/Monitor.c Mon Jun 19 14:51:31 2006 @@ -328,7 +328,7 @@ int Monitor(mddev_dev_t devlist, } disc.major = disc.minor = 0; } - if (dv == NULL && st->devid[i]) + if ((dv == NULL || strcmp(dv, "0:0") == 0) && st->devid[i]) dv = map_dev(major(st->devid[i]), minor(st->devid[i]), 1); change = newstate ^ st->devstate[i];