[Sheepdog] [PATCH v4 6/7] sheep: change hdr flags uint32_t from uint16_t

Liu Yuan namei.unix at gmail.com
Tue Oct 18 10:58:57 CEST 2011


From: Liu Yuan <tailai.ly at taobao.com>

And in passing, extend req/rsp into 14 uint32_t.

Signed-off-by: Liu Yuan <tailai.ly at taobao.com>
---
 include/sheep.h          |   23 ++++++++++++-----------
 include/sheepdog_proto.h |   23 ++++++++++++-----------
 2 files changed, 24 insertions(+), 22 deletions(-)

diff --git a/include/sheep.h b/include/sheep.h
index 230917f..0bacdb6 100644
--- a/include/sheep.h
+++ b/include/sheep.h
@@ -51,7 +51,7 @@
 struct sd_so_req {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
@@ -59,13 +59,13 @@ struct sd_so_req {
 	uint64_t	ctime;
 	uint32_t	copies;
 	uint32_t	tag;
-	uint32_t	opcode_specific[2];
+	uint32_t	opcode_specific[3];
 };
 
 struct sd_so_rsp {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
@@ -73,46 +73,46 @@ struct sd_so_rsp {
 	uint32_t	copies;
 	uint64_t	ctime;
 	uint64_t	oid;
-	uint32_t	opcode_specific[2];
+	uint32_t	opcode_specific[3];
 };
 
 struct sd_list_req {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
 	uint32_t        tgt_epoch;
-	uint32_t        pad[7];
+	uint32_t        pad[8];
 };
 
 struct sd_list_rsp {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
 	uint32_t        result;
-	uint32_t        pad[7];
+	uint32_t        pad[8];
 };
 
 struct sd_node_req {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
 	uint32_t	request_ver;
-	uint32_t	pad[7];
+	uint32_t	pad[8];
 };
 
 struct sd_node_rsp {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
@@ -122,6 +122,7 @@ struct sd_node_rsp {
 	uint32_t	master_idx;
 	uint64_t	store_size;
 	uint64_t	store_free;
+	uint32_t	pad[1];
 };
 
 struct sheepdog_node_list_entry {
diff --git a/include/sheepdog_proto.h b/include/sheepdog_proto.h
index 9467c44..1091184 100644
--- a/include/sheepdog_proto.h
+++ b/include/sheepdog_proto.h
@@ -95,28 +95,28 @@
 struct sd_req {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
-	uint32_t	opcode_specific[8];
+	uint32_t	opcode_specific[9];
 };
 
 struct sd_rsp {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
 	uint32_t        result;
-	uint32_t	opcode_specific[7];
+	uint32_t	opcode_specific[8];
 };
 
 struct sd_obj_req {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
@@ -125,24 +125,25 @@ struct sd_obj_req {
 	uint32_t        copies;
 	uint32_t        tgt_epoch;
 	uint64_t        offset;
+	uint32_t	pad[1];
 };
 
 struct sd_obj_rsp {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
 	uint32_t        result;
 	uint32_t        copies;
-	uint32_t        pad[6];
+	uint32_t        pad[7];
 };
 
 struct sd_vdi_req {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
@@ -150,13 +151,13 @@ struct sd_vdi_req {
 	uint32_t        base_vdi_id;
 	uint32_t	copies;
 	uint32_t        snapid;
-	uint32_t        pad[3];
+	uint32_t        pad[4];
 };
 
 struct sd_vdi_rsp {
 	uint8_t		proto_ver;
 	uint8_t		opcode;
-	uint16_t	flags;
+	uint32_t	flags;
 	uint32_t	epoch;
 	uint32_t        id;
 	uint32_t        data_length;
@@ -165,7 +166,7 @@ struct sd_vdi_rsp {
 	uint32_t        vdi_id;
 	uint32_t        attr_id;
 	uint32_t        copies;
-	uint32_t        pad[3];
+	uint32_t        pad[4];
 };
 
 struct sheepdog_inode {
-- 
1.7.6.1




More information about the sheepdog mailing list