diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2021-02-17 11:13:19 +0100 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2021-02-17 11:21:35 +0100 |
commit | a7cb25c877ad70c48fa66258f8e3f2157e2e2be5 (patch) | |
tree | 23e921124830ff9bccb8e8fdffbb16ae8d20d3d5 | |
parent | a915cd5a46dca80bb1ce981a2ee923b8e813d887 (diff) | |
download | lvm2-a7cb25c877ad70c48fa66258f8e3f2157e2e2be5.tar.gz |
lvconvert: VDO kernel support before converting
Early check for kernel support of VDO target before starting any
conversion work.
-rw-r--r-- | tools/lvconvert.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/lvconvert.c b/tools/lvconvert.c index ef31799fa..8bd73bb53 100644 --- a/tools/lvconvert.c +++ b/tools/lvconvert.c @@ -5472,6 +5472,14 @@ static int _lvconvert_to_vdopool_single(struct cmd_context *cmd, if (!(lvc.segtype = get_segtype_from_string(cmd, SEG_TYPE_NAME_VDO))) return_0; + if (activation() && lvc.segtype->ops->target_present) { + if (!lvc.segtype->ops->target_present(cmd, NULL, &lvc.target_attr)) { + log_error("%s: Required device-mapper target(s) not detected in your kernel.", + lvc.segtype->name); + return 0; + } + } + if (vg_is_shared(vg)) { /* FIXME: need to swap locks betwen LVs? */ log_error("Unable to convert VDO pool in VG with lock_type %s", vg->lock_type); |