]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - util.c
imsm: regression test for prodigal array member scenario
[thirdparty/mdadm.git] / util.c
diff --git a/util.c b/util.c
index 00bf80378de615e8ece5d40ab4d56990062ea4c8..4ccb1bbf9f07e122a99f1c349ad546516dea9c0e 100644 (file)
--- a/util.c
+++ b/util.c
@@ -863,6 +863,8 @@ void wait_for(char *dev, int fd)
                        return;
                usleep(200000);
        }
+       if (i == 25)
+               dprintf("%s: timeout waiting for %s\n", __func__, dev);
 }
 
 struct superswitch *superlist[] = { &super0, &super1, &super_ddf, &super_imsm, NULL };
@@ -1298,6 +1300,17 @@ int check_env(char *name)
        return 0;
 }
 
+__u32 random32(void)
+{
+       __u32 rv;
+       int rfd = open("/dev/urandom", O_RDONLY);
+       if (rfd < 0 || read(rfd, &rv, 4) != 4)
+               rv = random();
+       if (rfd >= 0)
+               close(rfd);
+       return rv;
+}
+
 #ifndef MDASSEMBLE
 int flush_metadata_updates(struct supertype *st)
 {