1
0
mirror of git://sourceware.org/git/lvm2.git synced 2024-12-23 21:35:29 +03:00

Always perform preload logic before suspending - not only in the case when we

have precommitted metadata.  (Necessary to avoid loading tables
while suspend in lvchange --refresh.)
This commit is contained in:
Alasdair Kergon 2011-07-05 18:36:37 +00:00
parent 7970cad6de
commit 9f67b0f0ed

View File

@ -1168,13 +1168,12 @@ static int _lv_suspend(struct cmd_context *cmd, const char *lvid_s,
lv_calculate_readahead(lv, NULL);
/*
* If VG was precommitted, preload devices for the LV.
* Preload devices for the LV.
* If the PVMOVE LV is being removed, it's only present in the old
* metadata and not the new, so we must explicitly add the new
* tables for all the changed LVs here, as the relationships
* are not found by walking the new metadata.
*/
if ((lv_pre->vg->status & PRECOMMITTED)) {
if (!(lv_pre->status & LOCKED) &&
(lv->status & LOCKED) &&
(pvmove_lv = find_pvmove_lv_in_lv(lv))) {
@ -1211,7 +1210,6 @@ static int _lv_suspend(struct cmd_context *cmd, const char *lvid_s,
if (!for_each_sub_lv(cmd, lv, &_preload_detached_lv, &detached))
goto_out;
}
}
if (!monitor_dev_for_events(cmd, lv, laopts, 0))
/* FIXME Consider aborting here */