1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-21 13:34:40 +03:00

more mirror fixing

This commit is contained in:
Alasdair Kergon 2005-11-09 18:13:10 +00:00
parent 24b026e333
commit abbca21248
2 changed files with 6 additions and 2 deletions

View File

@ -976,7 +976,7 @@ static int _tree_action(struct dev_manager *dm, struct logical_volume *lv, actio
goto_out; goto_out;
/* Preload any devices required before any suspensions */ /* Preload any devices required before any suspensions */
if (!dm_tree_preload_children(root, dlid, ID_LEN + sizeof(UUID_PREFIX) - 1)) if (!dm_tree_preload_children(root, dlid, ID_LEN + sizeof(UUID_PREFIX) - 1, (lv->status & LOCKED) ? 0 : 1))
goto_out; goto_out;
if ((action == ACTIVATE) && if ((action == ACTIVATE) &&

View File

@ -1392,6 +1392,10 @@ int dm_tree_preload_children(struct dm_tree_node *dnode,
} }
} }
/* Don't load tables yet if this flag is set */
if (!resume_children)
continue;
if (!child->info.inactive_table && child->props.segment_count) { if (!child->info.inactive_table && child->props.segment_count) {
if (!_load_node(child)) { if (!_load_node(child)) {
stack; stack;
@ -1400,7 +1404,7 @@ int dm_tree_preload_children(struct dm_tree_node *dnode,
} }
/* Resume device immediately if it has parents */ /* Resume device immediately if it has parents */
if (!resume_children || !dm_tree_node_num_children(child, 1)) if (!dm_tree_node_num_children(child, 1))
continue; continue;
if (!_resume_node(name, child->info.major, child->info.minor, &newinfo)) { if (!_resume_node(name, child->info.major, child->info.minor, &newinfo)) {