summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/ec/src/ec.h
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/cluster/ec/src/ec.h')
-rw-r--r--xlators/cluster/ec/src/ec.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/xlators/cluster/ec/src/ec.h b/xlators/cluster/ec/src/ec.h
index b729fffc274..e2ec9cf04f5 100644
--- a/xlators/cluster/ec/src/ec.h
+++ b/xlators/cluster/ec/src/ec.h
@@ -11,6 +11,8 @@
#ifndef __EC_H__
#define __EC_H__
+#include "ec-method.h"
+
#define EC_XATTR_PREFIX "trusted.ec."
#define EC_XATTR_CONFIG EC_XATTR_PREFIX"config"
#define EC_XATTR_SIZE EC_XATTR_PREFIX"size"
@@ -21,4 +23,11 @@
#define EC_VERSION_SIZE 2
#define EC_SHD_INODE_LRU_LIMIT 10
+#define EC_MAX_FRAGMENTS EC_METHOD_MAX_FRAGMENTS
+/* The maximum number of nodes is derived from the maximum allowed fragments
+ * using the rule that redundancy cannot be equal or greater than the number
+ * of fragments.
+ */
+#define EC_MAX_NODES min(EC_MAX_FRAGMENTS * 2 - 1, EC_METHOD_MAX_NODES)
+
#endif /* __EC_H__ */