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

vgsplit: don't reread vg_to

The destination vg is first written with the EXPORTED flag,
then the source vg is written, then the destination vg is
written again without the EXPORTED flag.  Remove an unnecessary
vg_read of the destination vg just before the second write.
This commit is contained in:
David Teigland 2022-01-12 16:42:01 -06:00
parent 7502f78678
commit 5e428d22d9

View File

@ -727,30 +727,6 @@ int vgsplit(struct cmd_context *cmd, int argc, char **argv)
backup(vg_from);
}
/*
* Finally, remove the EXPORTED flag from the new VG and write it out.
* We need to unlock vg_to because vg_read_for_update wants to lock it.
*/
if (!test_mode()) {
unlock_vg(cmd, NULL, vg_name_to);
release_vg(vg_to);
/*
* This command uses the exported vg flag internally, but
* exported VGs are not allowed to be split from the command
* level, so ALLOW_EXPORTED is not set in commands.h.
*/
cmd->include_exported_vgs = 1;
vg_to = vg_read_for_update(cmd, vg_name_to, NULL, 0, 0);
if (!vg_to) {
log_error("Volume group \"%s\" became inconsistent: "
"please fix manually", vg_name_to);
goto bad;
}
}
vg_to->status &= ~EXPORTED_VG;
if (!vg_write(vg_to) || !vg_commit(vg_to))