aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIlya Dryomov <idryomov@gmail.com>2019-02-25 12:55:38 -0500
committerIlya Dryomov <idryomov@gmail.com>2019-03-05 12:55:18 -0500
commitb9f6d447a6f67b2acc3c4a9d9adc2508986e8df9 (patch)
tree0249e92c78794be186c786e718f42d0757e0f707
parent9b17eb2ce102e3274dafb3776a699969f02f7611 (diff)
rbd: advertise support for RBD_FEATURE_DEEP_FLATTEN
All copyups perform deep-copyup regardless of whether deep-flatten feature is enabled. The feature bit is used to ensure that image is written to only by new-enough clients that always perform deep-copyup. Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
-rw-r--r--drivers/block/rbd.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index ccfbed8741b8..8dbfc5e54ae3 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -115,12 +115,14 @@ static int atomic_dec_return_safe(atomic_t *v)
115#define RBD_FEATURE_LAYERING (1ULL<<0) 115#define RBD_FEATURE_LAYERING (1ULL<<0)
116#define RBD_FEATURE_STRIPINGV2 (1ULL<<1) 116#define RBD_FEATURE_STRIPINGV2 (1ULL<<1)
117#define RBD_FEATURE_EXCLUSIVE_LOCK (1ULL<<2) 117#define RBD_FEATURE_EXCLUSIVE_LOCK (1ULL<<2)
118#define RBD_FEATURE_DEEP_FLATTEN (1ULL<<5)
118#define RBD_FEATURE_DATA_POOL (1ULL<<7) 119#define RBD_FEATURE_DATA_POOL (1ULL<<7)
119#define RBD_FEATURE_OPERATIONS (1ULL<<8) 120#define RBD_FEATURE_OPERATIONS (1ULL<<8)
120 121
121#define RBD_FEATURES_ALL (RBD_FEATURE_LAYERING | \ 122#define RBD_FEATURES_ALL (RBD_FEATURE_LAYERING | \
122 RBD_FEATURE_STRIPINGV2 | \ 123 RBD_FEATURE_STRIPINGV2 | \
123 RBD_FEATURE_EXCLUSIVE_LOCK | \ 124 RBD_FEATURE_EXCLUSIVE_LOCK | \
125 RBD_FEATURE_DEEP_FLATTEN | \
124 RBD_FEATURE_DATA_POOL | \ 126 RBD_FEATURE_DATA_POOL | \
125 RBD_FEATURE_OPERATIONS) 127 RBD_FEATURE_OPERATIONS)
126 128