From 942f302b8243494233e5198df01c5153f0c7de9f Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 16 Jan 2012 14:27:12 -0800 Subject: [PATCH] move feature bit definition to separate header file It was sloppy to have this in SimpleMessenger.h Signed-off-by: Sage Weil --- src/Makefile.am | 1 + src/include/ceph_features.h | 37 +++++++++++++++++++++++++++++++++++++ src/include/ceph_fs.h | 20 +------------------- src/msg/SimpleMessenger.h | 18 ++---------------- 4 files changed, 41 insertions(+), 35 deletions(-) create mode 100644 src/include/ceph_features.h diff --git a/src/Makefile.am b/src/Makefile.am index 70544c7eb6b73..6fef29d5c8fa4 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1153,6 +1153,7 @@ noinst_HEADERS = \ include/buffer.h\ include/byteorder.h\ include/cephfs/libcephfs.h\ + include/ceph_features.h\ include/ceph_frag.h\ include/ceph_fs.h\ include/ceph_hash.h\ diff --git a/src/include/ceph_features.h b/src/include/ceph_features.h new file mode 100644 index 0000000000000..a75625e79516b --- /dev/null +++ b/src/include/ceph_features.h @@ -0,0 +1,37 @@ +#ifndef __CEPH_FEATURES +#define __CEPH_FEATURES + +/* + * feature bits + */ +#define CEPH_FEATURE_UID (1<<0) +#define CEPH_FEATURE_NOSRCADDR (1<<1) +#define CEPH_FEATURE_MONCLOCKCHECK (1<<2) +#define CEPH_FEATURE_FLOCK (1<<3) +#define CEPH_FEATURE_SUBSCRIBE2 (1<<4) +#define CEPH_FEATURE_MONNAMES (1<<5) +#define CEPH_FEATURE_RECONNECT_SEQ (1<<6) +#define CEPH_FEATURE_DIRLAYOUTHASH (1<<7) +#define CEPH_FEATURE_OBJECTLOCATOR (1<<8) +#define CEPH_FEATURE_PGID64 (1<<9) +#define CEPH_FEATURE_INCSUBOSDMAP (1<<10) +#define CEPH_FEATURE_PGPOOL3 (1<<11) +#define CEPH_FEATURE_OSDREPLYMUX (1<<12) + +/* + * Features supported. Should be everything above. + */ +#define CEPH_FEATURES_SUPPORTED_DEFAULT \ + (CEPH_FEATURE_NOSRCADDR | \ + CEPH_FEATURE_SUBSCRIBE2 | \ + CEPH_FEATURE_MONNAMES | \ + CEPH_FEATURE_FLOCK | \ + CEPH_FEATURE_RECONNECT_SEQ | \ + CEPH_FEATURE_DIRLAYOUTHASH | \ + CEPH_FEATURE_OBJECTLOCATOR | \ + CEPH_FEATURE_PGID64 | \ + CEPH_FEATURE_INCSUBOSDMAP | \ + CEPH_FEATURE_PGPOOL3 | \ + CEPH_FEATURE_OSDREPLYMUX) + +#endif diff --git a/src/include/ceph_fs.h b/src/include/ceph_fs.h index 384b8755a1db1..a6a7ec965f2c2 100644 --- a/src/include/ceph_fs.h +++ b/src/include/ceph_fs.h @@ -14,6 +14,7 @@ #include "msgr.h" #include "rados.h" +#include "ceph_features.h" /* * subprotocol versions. when specific messages types or high-level @@ -32,25 +33,6 @@ /* arbitrary limit on max # of monitors (cluster of 3 is typical) */ #define CEPH_MAX_MON 31 - -/* - * feature bits - */ -#define CEPH_FEATURE_UID (1<<0) -#define CEPH_FEATURE_NOSRCADDR (1<<1) -#define CEPH_FEATURE_MONCLOCKCHECK (1<<2) -#define CEPH_FEATURE_FLOCK (1<<3) -#define CEPH_FEATURE_SUBSCRIBE2 (1<<4) -#define CEPH_FEATURE_MONNAMES (1<<5) -#define CEPH_FEATURE_RECONNECT_SEQ (1<<6) -#define CEPH_FEATURE_DIRLAYOUTHASH (1<<7) -#define CEPH_FEATURE_OBJECTLOCATOR (1<<8) -#define CEPH_FEATURE_PGID64 (1<<9) -#define CEPH_FEATURE_INCSUBOSDMAP (1<<10) -#define CEPH_FEATURE_PGPOOL3 (1<<11) -#define CEPH_FEATURE_OSDREPLYMUX (1<<12) - - /* * ceph_file_layout - describe data layout for a file/inode */ diff --git a/src/msg/SimpleMessenger.h b/src/msg/SimpleMessenger.h index 54df956b84179..9bbd96fa6619a 100644 --- a/src/msg/SimpleMessenger.h +++ b/src/msg/SimpleMessenger.h @@ -51,20 +51,6 @@ using namespace __gnu_cxx; * the destructor will lead to badness. */ -// default feature(s) everyone gets -#define MSGR_FEATURES_SUPPORTED \ - CEPH_FEATURE_NOSRCADDR | \ - CEPH_FEATURE_SUBSCRIBE2 | \ - CEPH_FEATURE_MONNAMES | \ - CEPH_FEATURE_FLOCK | \ - CEPH_FEATURE_RECONNECT_SEQ | \ - CEPH_FEATURE_DIRLAYOUTHASH | \ - CEPH_FEATURE_OBJECTLOCATOR | \ - CEPH_FEATURE_PGID64 | \ - CEPH_FEATURE_INCSUBOSDMAP | \ - CEPH_FEATURE_PGPOOL3 | \ - CEPH_FEATURE_OSDREPLYMUX - class SimpleMessenger : public Messenger { public: struct Policy { @@ -77,11 +63,11 @@ public: Policy() : lossy(false), server(false), throttler(NULL), - features_supported(MSGR_FEATURES_SUPPORTED), + features_supported(CEPH_FEATURES_SUPPORTED_DEFAULT), features_required(0) {} Policy(bool l, bool s, uint64_t sup, uint64_t req) : lossy(l), server(s), throttler(NULL), - features_supported(sup | MSGR_FEATURES_SUPPORTED), + features_supported(sup | CEPH_FEATURES_SUPPORTED_DEFAULT), features_required(req) {} static Policy stateful_server(uint64_t sup, uint64_t req) { return Policy(false, true, sup, req); } -- 2.39.5