libceph: use osd_req_op_extent_init()
authorAlex Elder <elder@inktank.com>
Thu, 14 Mar 2013 01:50:01 +0000 (20:50 -0500)
committerSage Weil <sage@inktank.com>
Thu, 2 May 2013 04:17:49 +0000 (21:17 -0700)
Use osd_req_op_extent_init() in ceph_osdc_new_request() to
initialize the one or two ops built in that function.

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
net/ceph/osd_client.c

index 7136060a05011a8afaff9cd63eee24e5e8125066..55f7c9a57a43d981cfa7880735357c9ca7107fd7 100644 (file)
@@ -581,17 +581,10 @@ struct ceph_osd_request *ceph_osdc_new_request(struct ceph_osd_client *osdc,
                        truncate_size = object_size;
        }
 
-       memset(&ops, 0, sizeof ops);
-       ops[0].op = opcode;
-       ops[0].extent.offset = objoff;
-       ops[0].extent.length = objlen;
-       ops[0].extent.truncate_size = truncate_size;
-       ops[0].extent.truncate_seq = truncate_seq;
-       if (ops[0].op == CEPH_OSD_OP_WRITE)
-               ops[0].payload_len = *plen;
-
+       osd_req_op_extent_init(&ops[0], opcode, objoff, objlen,
+                               truncate_size, truncate_seq);
        if (do_sync)
-               ops[1].op = CEPH_OSD_OP_STARTSYNC;
+               osd_req_op_init(&ops[1], CEPH_OSD_OP_STARTSYNC);
 
        req->r_file_layout = *layout;  /* keep a copy */