summaryrefslogtreecommitdiff
path: root/libdm/libdm-targets.c
diff options
context:
space:
mode:
authorZdenek Kabelac <zkabelac@redhat.com>2017-02-23 23:38:06 +0100
committerZdenek Kabelac <zkabelac@redhat.com>2017-03-10 19:33:01 +0100
commitddd5a7680153486c4edebb8a7946827e7abe93a0 (patch)
tree78cd501cac13f106992916441871aeb9ca54d6aa /libdm/libdm-targets.c
parentbf79fb1a337b707ae6d44e42c7b43c62cfac2bdd (diff)
downloadlvm2-ddd5a7680153486c4edebb8a7946827e7abe93a0.tar.gz
libdm: support cache metadata2 feature flag
Dm cache target version 1.10 introduces new cache metadata format (upstream kernel >=4.11). New format is enable by passing new target feature flag metadata2. Interace side on libdm uses DM_CACHE_FEATURE_METADATA2. This feature bit is now also recognized on status and set in 'feature_flags' field of dm_status_cache structure. Code also adds check for 'highest' supported feature flag bit. So it rejects properly any 'unknown' feature bit set by application.
Diffstat (limited to 'libdm/libdm-targets.c')
-rw-r--r--libdm/libdm-targets.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libdm/libdm-targets.c b/libdm/libdm-targets.c
index 8c987908e..f44abfd53 100644
--- a/libdm/libdm-targets.c
+++ b/libdm/libdm-targets.c
@@ -276,6 +276,8 @@ int dm_get_status_cache(struct dm_pool *mem, const char *params,
s->feature_flags |= DM_CACHE_FEATURE_WRITEBACK;
else if (!strncmp(p, "passthrough ", 12))
s->feature_flags |= DM_CACHE_FEATURE_PASSTHROUGH;
+ else if (!strncmp(p, "metadata2 ", 10))
+ s->feature_flags |= DM_CACHE_FEATURE_METADATA2;
else
log_error("Unknown feature in status: %s", params);