diff options
Diffstat (limited to 'include/linux/drbd.h')
-rw-r--r-- | include/linux/drbd.h | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/include/linux/drbd.h b/include/linux/drbd.h index 479ee3a1d901..ef44c7a0638c 100644 --- a/include/linux/drbd.h +++ b/include/linux/drbd.h | |||
@@ -53,10 +53,10 @@ | |||
53 | 53 | ||
54 | 54 | ||
55 | extern const char *drbd_buildtag(void); | 55 | extern const char *drbd_buildtag(void); |
56 | #define REL_VERSION "8.3.8.1" | 56 | #define REL_VERSION "8.3.9" |
57 | #define API_VERSION 88 | 57 | #define API_VERSION 88 |
58 | #define PRO_VERSION_MIN 86 | 58 | #define PRO_VERSION_MIN 86 |
59 | #define PRO_VERSION_MAX 94 | 59 | #define PRO_VERSION_MAX 95 |
60 | 60 | ||
61 | 61 | ||
62 | enum drbd_io_error_p { | 62 | enum drbd_io_error_p { |
@@ -91,6 +91,11 @@ enum drbd_after_sb_p { | |||
91 | ASB_VIOLENTLY | 91 | ASB_VIOLENTLY |
92 | }; | 92 | }; |
93 | 93 | ||
94 | enum drbd_on_no_data { | ||
95 | OND_IO_ERROR, | ||
96 | OND_SUSPEND_IO | ||
97 | }; | ||
98 | |||
94 | /* KEEP the order, do not delete or insert. Only append. */ | 99 | /* KEEP the order, do not delete or insert. Only append. */ |
95 | enum drbd_ret_codes { | 100 | enum drbd_ret_codes { |
96 | ERR_CODE_BASE = 100, | 101 | ERR_CODE_BASE = 100, |
@@ -140,6 +145,7 @@ enum drbd_ret_codes { | |||
140 | ERR_CONNECTED = 151, /* DRBD 8.3 only */ | 145 | ERR_CONNECTED = 151, /* DRBD 8.3 only */ |
141 | ERR_PERM = 152, | 146 | ERR_PERM = 152, |
142 | ERR_NEED_APV_93 = 153, | 147 | ERR_NEED_APV_93 = 153, |
148 | ERR_STONITH_AND_PROT_A = 154, | ||
143 | 149 | ||
144 | /* insert new ones above this line */ | 150 | /* insert new ones above this line */ |
145 | AFTER_LAST_ERR_CODE | 151 | AFTER_LAST_ERR_CODE |
@@ -226,13 +232,17 @@ union drbd_state { | |||
226 | unsigned conn:5 ; /* 17/32 cstates */ | 232 | unsigned conn:5 ; /* 17/32 cstates */ |
227 | unsigned disk:4 ; /* 8/16 from D_DISKLESS to D_UP_TO_DATE */ | 233 | unsigned disk:4 ; /* 8/16 from D_DISKLESS to D_UP_TO_DATE */ |
228 | unsigned pdsk:4 ; /* 8/16 from D_DISKLESS to D_UP_TO_DATE */ | 234 | unsigned pdsk:4 ; /* 8/16 from D_DISKLESS to D_UP_TO_DATE */ |
229 | unsigned susp:1 ; /* 2/2 IO suspended no/yes */ | 235 | unsigned susp:1 ; /* 2/2 IO suspended no/yes (by user) */ |
230 | unsigned aftr_isp:1 ; /* isp .. imposed sync pause */ | 236 | unsigned aftr_isp:1 ; /* isp .. imposed sync pause */ |
231 | unsigned peer_isp:1 ; | 237 | unsigned peer_isp:1 ; |
232 | unsigned user_isp:1 ; | 238 | unsigned user_isp:1 ; |
233 | unsigned _pad:11; /* 0 unused */ | 239 | unsigned susp_nod:1 ; /* IO suspended because no data */ |
240 | unsigned susp_fen:1 ; /* IO suspended because fence peer handler runs*/ | ||
241 | unsigned _pad:9; /* 0 unused */ | ||
234 | #elif defined(__BIG_ENDIAN_BITFIELD) | 242 | #elif defined(__BIG_ENDIAN_BITFIELD) |
235 | unsigned _pad:11; /* 0 unused */ | 243 | unsigned _pad:9; |
244 | unsigned susp_fen:1 ; | ||
245 | unsigned susp_nod:1 ; | ||
236 | unsigned user_isp:1 ; | 246 | unsigned user_isp:1 ; |
237 | unsigned peer_isp:1 ; | 247 | unsigned peer_isp:1 ; |
238 | unsigned aftr_isp:1 ; /* isp .. imposed sync pause */ | 248 | unsigned aftr_isp:1 ; /* isp .. imposed sync pause */ |
@@ -312,6 +322,8 @@ enum drbd_timeout_flag { | |||
312 | 322 | ||
313 | #define DRBD_MAGIC 0x83740267 | 323 | #define DRBD_MAGIC 0x83740267 |
314 | #define BE_DRBD_MAGIC __constant_cpu_to_be32(DRBD_MAGIC) | 324 | #define BE_DRBD_MAGIC __constant_cpu_to_be32(DRBD_MAGIC) |
325 | #define DRBD_MAGIC_BIG 0x835a | ||
326 | #define BE_DRBD_MAGIC_BIG __constant_cpu_to_be16(DRBD_MAGIC_BIG) | ||
315 | 327 | ||
316 | /* these are of type "int" */ | 328 | /* these are of type "int" */ |
317 | #define DRBD_MD_INDEX_INTERNAL -1 | 329 | #define DRBD_MD_INDEX_INTERNAL -1 |