aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/block/drbd/drbd_int.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/block/drbd/drbd_int.h')
-rw-r--r--drivers/block/drbd/drbd_int.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/block/drbd/drbd_int.h b/drivers/block/drbd/drbd_int.h
index 37a25a6084dd..e09132483980 100644
--- a/drivers/block/drbd/drbd_int.h
+++ b/drivers/block/drbd/drbd_int.h
@@ -481,7 +481,8 @@ struct p_sizes {
481 u64 u_size; /* user requested size */ 481 u64 u_size; /* user requested size */
482 u64 c_size; /* current exported size */ 482 u64 c_size; /* current exported size */
483 u32 max_segment_size; /* Maximal size of a BIO */ 483 u32 max_segment_size; /* Maximal size of a BIO */
484 u32 queue_order_type; 484 u16 queue_order_type; /* not yet implemented in DRBD*/
485 u16 dds_flags; /* use enum dds_flags here. */
485} __packed; 486} __packed;
486 487
487struct p_state { 488struct p_state {
@@ -1081,6 +1082,11 @@ enum chg_state_flags {
1081 CS_ORDERED = CS_WAIT_COMPLETE + CS_SERIALIZE, 1082 CS_ORDERED = CS_WAIT_COMPLETE + CS_SERIALIZE,
1082}; 1083};
1083 1084
1085enum dds_flags {
1086 DDSF_FORCED = 1,
1087 DDSF_NO_RESYNC = 2, /* Do not run a resync for the new space */
1088};
1089
1084extern void drbd_init_set_defaults(struct drbd_conf *mdev); 1090extern void drbd_init_set_defaults(struct drbd_conf *mdev);
1085extern int drbd_change_state(struct drbd_conf *mdev, enum chg_state_flags f, 1091extern int drbd_change_state(struct drbd_conf *mdev, enum chg_state_flags f,
1086 union drbd_state mask, union drbd_state val); 1092 union drbd_state mask, union drbd_state val);
@@ -1113,7 +1119,7 @@ extern int drbd_send_protocol(struct drbd_conf *mdev);
1113extern int drbd_send_uuids(struct drbd_conf *mdev); 1119extern int drbd_send_uuids(struct drbd_conf *mdev);
1114extern int drbd_send_uuids_skip_initial_sync(struct drbd_conf *mdev); 1120extern int drbd_send_uuids_skip_initial_sync(struct drbd_conf *mdev);
1115extern int drbd_send_sync_uuid(struct drbd_conf *mdev, u64 val); 1121extern int drbd_send_sync_uuid(struct drbd_conf *mdev, u64 val);
1116extern int drbd_send_sizes(struct drbd_conf *mdev, int trigger_reply); 1122extern int drbd_send_sizes(struct drbd_conf *mdev, int trigger_reply, enum dds_flags flags);
1117extern int _drbd_send_state(struct drbd_conf *mdev); 1123extern int _drbd_send_state(struct drbd_conf *mdev);
1118extern int drbd_send_state(struct drbd_conf *mdev); 1124extern int drbd_send_state(struct drbd_conf *mdev);
1119extern int _drbd_send_cmd(struct drbd_conf *mdev, struct socket *sock, 1125extern int _drbd_send_cmd(struct drbd_conf *mdev, struct socket *sock,
@@ -1382,10 +1388,6 @@ extern void drbd_suspend_io(struct drbd_conf *mdev);
1382extern void drbd_resume_io(struct drbd_conf *mdev); 1388extern void drbd_resume_io(struct drbd_conf *mdev);
1383extern char *ppsize(char *buf, unsigned long long size); 1389extern char *ppsize(char *buf, unsigned long long size);
1384extern sector_t drbd_new_dev_size(struct drbd_conf *, struct drbd_backing_dev *, int); 1390extern sector_t drbd_new_dev_size(struct drbd_conf *, struct drbd_backing_dev *, int);
1385enum dds_flags {
1386 DDSF_FORCED = 1,
1387 DDSF_NO_RESYNC = 2, /* Do not run a resync for the new space */
1388};
1389enum determine_dev_size { dev_size_error = -1, unchanged = 0, shrunk = 1, grew = 2 }; 1391enum determine_dev_size { dev_size_error = -1, unchanged = 0, shrunk = 1, grew = 2 };
1390extern enum determine_dev_size drbd_determin_dev_size(struct drbd_conf *, enum dds_flags) __must_hold(local); 1392extern enum determine_dev_size drbd_determin_dev_size(struct drbd_conf *, enum dds_flags) __must_hold(local);
1391extern void resync_after_online_grow(struct drbd_conf *); 1393extern void resync_after_online_grow(struct drbd_conf *);