Index: LVM2.2.02.67/libdm/libdm-deptree.c =================================================================== --- LVM2.2.02.67.orig/libdm/libdm-deptree.c +++ LVM2.2.02.67/libdm/libdm-deptree.c @@ -1143,6 +1143,19 @@ static int _dm_tree_deactivate_children( (child->presuspend_node && !_node_has_closed_parents(child->presuspend_node, uuid_prefix, uuid_prefix_len))) { + + int idx = 10; + while (info.open_count && idx--) { + struct timespec ts = {0, 500000000}; + nanosleep(&ts, NULL); + _info_by_dev(dinfo->major, dinfo->minor, 1, &info); + } + + if (info.open_count) { + log_error("give up on open_count"); + continue; + } + /* Only report error from (likely non-internal) dependency at top level */ if (!level) { log_error("Unable to deactivate open %s (%" PRIu32