diff options
Diffstat (limited to 'lib/format1/format1.c')
-rw-r--r-- | lib/format1/format1.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/format1/format1.c b/lib/format1/format1.c index b0943b165..1b86ef5d6 100644 --- a/lib/format1/format1.c +++ b/lib/format1/format1.c @@ -180,6 +180,8 @@ out: static struct volume_group *_format1_vg_read(struct format_instance *fid, const char *vg_name, struct metadata_area *mda __attribute__((unused)), + struct cached_vg_fmtdata **vg_fmtdata __attribute__((unused)), + unsigned *use_previous_vg __attribute__((unused)), int single_device __attribute__((unused))) { struct volume_group *vg; @@ -496,6 +498,11 @@ static int _format1_vg_setup(struct format_instance *fid, struct volume_group *v if (!vg_check_new_extent_size(vg->fid->fmt, vg->extent_size)) return_0; + /* Generate lvm1_system_id if not yet set */ + if (!*vg->lvm1_system_id && + !generate_lvm1_system_id(vg->cmd, vg->lvm1_system_id, "")) + return_0; + return 1; } @@ -590,7 +597,8 @@ struct format_type *init_format(struct cmd_context *cmd) fmt->alias = NULL; fmt->orphan_vg_name = FMT_LVM1_ORPHAN_VG_NAME; fmt->features = FMT_RESTRICTED_LVIDS | FMT_ORPHAN_ALLOCATABLE | - FMT_RESTRICTED_READAHEAD | FMT_OBSOLETE; + FMT_RESTRICTED_READAHEAD | FMT_OBSOLETE | + FMT_SYSTEMID_ON_PVS; fmt->private = NULL; dm_list_init(&fmt->mda_ops); |