diff options
Diffstat (limited to 'lib/metadata/vg.c')
-rw-r--r-- | lib/metadata/vg.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/metadata/vg.c b/lib/metadata/vg.c index 35cdfea7e..88323d56f 100644 --- a/lib/metadata/vg.c +++ b/lib/metadata/vg.c @@ -779,10 +779,9 @@ int vgreduce_single(struct cmd_context *cmd, struct volume_group *vg, vg->free_count -= pv_pe_count(pv) - pv_pe_alloc_count(pv); vg->extent_count -= pv_pe_count(pv); - orphan_vg = vg_read_for_update(cmd, vg->fid->fmt->orphan_vg_name, - NULL, 0, 0); - - if (vg_read_error(orphan_vg)) + orphan_vg = vg_read(cmd, vg->fid->fmt->orphan_vg_name, NULL, + READ_NO_LOCK | READ_FOR_UPDATE, 0, NULL); + if (!orphan_vg) goto bad; if (!vg_split_mdas(cmd, vg, orphan_vg) || !vg->pv_count) { |