[sheepdog] [PATCH v3 1/2] sheep/http: add macro ONODE_HDR_SIZE

Liu Yuan namei.unix at gmail.com
Mon Mar 3 09:29:39 CET 2014


On Mon, Mar 03, 2014 at 04:00:14PM +0800, Robin Dong wrote:
> From: Robin Dong <sanbai at taobao.com>
> 
> Add macro ONODE_HDR_SIZE to replace BLOCK_SIZE in http with which the
> code will be more easier to understand.
> 
> Signed-off-by: Robin Dong <sanbai at taobao.com>
> ---
>  sheep/http/kv.c | 12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)
> 
> diff --git a/sheep/http/kv.c b/sheep/http/kv.c
> index 6f648e3..07f5347 100644
> --- a/sheep/http/kv.c
> +++ b/sheep/http/kv.c
> @@ -54,6 +54,8 @@ struct onode_extent {
>  #define ONODE_INIT	1	/* created and allocated space, but no data */
>  #define ONODE_COMPLETE	2	/* data upload complete */
>  
> +#define ONODE_HDR_SIZE  BLOCK_SIZE
> +
>  struct kv_onode {
>  	union {
>  		struct {
> @@ -69,10 +71,10 @@ struct kv_onode {
>  			uint8_t flags;
>  		};
>  
> -		uint8_t pad[BLOCK_SIZE];
> +		uint8_t pad[ONODE_HDR_SIZE];
>  	};
>  	union {
> -		uint8_t data[SD_DATA_OBJ_SIZE - BLOCK_SIZE];
> +		uint8_t data[SD_DATA_OBJ_SIZE - ONODE_HDR_SIZE];
>  		struct onode_extent o_extent[0];
>  	};
>  };
> @@ -615,7 +617,7 @@ out:
>  
>  /* Object operations */
>  
> -#define KV_ONODE_INLINE_SIZE (SD_DATA_OBJ_SIZE - BLOCK_SIZE)
> +#define KV_ONODE_INLINE_SIZE (SD_DATA_OBJ_SIZE - ONODE_HDR_SIZE)
>  
>  static int vdi_read_write(uint32_t vid, char *data, size_t length,
>  			  off_t offset, bool is_read)
> @@ -771,7 +773,7 @@ static int onode_populate_data(struct kv_onode *onode, struct http_request *req)
>  			goto out;
>  		}
>  		ret = sd_write_object(onode->oid, (char *)onode,
> -				      BLOCK_SIZE + size, 0, false);
> +				      ONODE_HDR_SIZE + size, 0, false);
>  		if (ret != SD_RES_SUCCESS)
>  			goto out;
>  	} else {
> @@ -803,7 +805,7 @@ static int onode_do_create(struct kv_onode *onode, struct sd_inode *inode,
>  	else
>  		len = sizeof(struct onode_extent) * onode->nr_extent;
>  
> -	ret = sd_write_object(oid, (char *)onode, BLOCK_SIZE + len,
> +	ret = sd_write_object(oid, (char *)onode, ONODE_HDR_SIZE + len,
>  			      0, create);
>  	if (ret != SD_RES_SUCCESS) {
>  		sd_err("failed to create object, %" PRIx64, oid);
> -- 
> 1.7.12.4
> 
> -- 
> sheepdog mailing list
> sheepdog at lists.wpkg.org
> http://lists.wpkg.org/mailman/listinfo/sheepdog

Applied these two, thanks

Yuan



More information about the sheepdog mailing list