#include "string-util.h"
#include "strv.h"
#include "tmpfile-util.h"
+#include "udev-util.h"
#include "user-util.h"
#include "xattr-util.h"
if (device_is_mmc_special_partition(q))
continue;
+ r = device_wait_for_initialization(q, "block", NULL);
+ if (r < 0)
+ return r;
+
n++;
}
sd_device *d,
unsigned num_partitions,
sd_device_enumerator **ret_enumerator) {
+ _cleanup_(sd_device_unrefp) sd_device *device = NULL;
int r;
log_debug("Waiting for device (parent + %d partitions) to appear...", num_partitions);
+ r = device_wait_for_initialization(d, "block", &device);
+ if (r < 0)
+ return r;
+
for (unsigned i = 0; i < N_DEVICE_NODE_LIST_ATTEMPTS; i++) {
- r = wait_for_partitions_to_appear(fd, d, num_partitions, ret_enumerator);
+ r = wait_for_partitions_to_appear(fd, device, num_partitions, ret_enumerator);
if (r != -EAGAIN)
return r;
}