From 4a1a15478d19caa7db160936b4cb4697a64abeb8 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Fri, 11 Aug 2017 12:11:47 -0400 Subject: [PATCH] include/ceph_features: incarnation 3 can begin! With all upgrades passing through luminous, we can now start reusing bits retired in luminous. Our sentinel bitmask will be the combination of SERVER_MIMIC and SERVER_JEWEL (i.e., CEPH_FEATUREMASK_SERVER_MIMIC). Signed-off-by: Sage Weil --- src/include/ceph_features.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/include/ceph_features.h b/src/include/ceph_features.h index 94bc9311621..07980ad5cbf 100755 --- a/src/include/ceph_features.h +++ b/src/include/ceph_features.h @@ -4,12 +4,13 @@ #include "sys/types.h" /* - * Each time we reclaim bits for reuse we need to specify another bit - * that, if present, indicates we have the new incarnation of that - * feature. Base case is 1 (first use) + * Each time we reclaim bits for reuse we need to specify another + * bitmask that, if all bits are set, indicates we have the new + * incarnation of that feature. Base case is 1 (first use) */ #define CEPH_FEATURE_INCARNATION_1 (0ull) -#define CEPH_FEATURE_INCARNATION_2 (1ull<<57) // CEPH_FEATURE_SERVER_JEWEL +#define CEPH_FEATURE_INCARNATION_2 (1ull<<57) // SERVER_JEWEL +#define CEPH_FEATURE_INCARNATION_3 ((1ull<<57)|(1ull<<28)) // SERVER_MIMIC #define DEFINE_CEPH_FEATURE(bit, incarnation, name) \ const static uint64_t CEPH_FEATURE_##name = (1ULL<