rbd: change rbd_obj_request_submit() signature
authorIlya Dryomov <idryomov@gmail.com>
Mon, 12 Sep 2016 16:59:42 +0000 (18:59 +0200)
committerIlya Dryomov <idryomov@gmail.com>
Mon, 3 Oct 2016 14:13:47 +0000 (16:13 +0200)
- osdc parameter is useless
- starting with commit 5aea3dcd5021 ("libceph: a major OSD client
  update"), ceph_osdc_start_request() always returns success

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Alex Elder <elder@linaro.org>
Reviewed-by: David Disseldorp <ddiss@suse.de>
drivers/block/rbd.c

index cc4c9f4..5c42240 100644 (file)
@@ -1618,11 +1618,12 @@ static bool obj_request_type_valid(enum obj_request_type type)
        }
 }
 
-static int rbd_obj_request_submit(struct ceph_osd_client *osdc,
-                               struct rbd_obj_request *obj_request)
+static void rbd_obj_request_submit(struct rbd_obj_request *obj_request)
 {
-       dout("%s %p\n", __func__, obj_request);
-       return ceph_osdc_start_request(osdc, obj_request->osd_req, false);
+       struct ceph_osd_request *osd_req = obj_request->osd_req;
+
+       dout("%s %p osd_req %p\n", __func__, obj_request, osd_req);
+       ceph_osdc_start_request(osd_req->r_osdc, osd_req, false);
 }
 
 static void rbd_obj_request_end(struct rbd_obj_request *obj_request)
@@ -2646,7 +2647,6 @@ rbd_img_obj_parent_read_full_callback(struct rbd_img_request *img_request)
 {
        struct rbd_obj_request *orig_request;
        struct ceph_osd_request *osd_req;
-       struct ceph_osd_client *osdc;
        struct rbd_device *rbd_dev;
        struct page **pages;
        enum obj_operation_type op_type;
@@ -2683,13 +2683,9 @@ rbd_img_obj_parent_read_full_callback(struct rbd_img_request *img_request)
         * and re-submit the original write request.
         */
        if (!rbd_dev->parent_overlap) {
-               struct ceph_osd_client *osdc;
-
                ceph_release_page_vector(pages, page_count);
-               osdc = &rbd_dev->rbd_client->client->osdc;
-               img_result = rbd_obj_request_submit(osdc, orig_request);
-               if (!img_result)
-                       return;
+               rbd_obj_request_submit(orig_request);
+               return;
        }
 
        if (img_result)
@@ -2723,10 +2719,9 @@ rbd_img_obj_parent_read_full_callback(struct rbd_img_request *img_request)
 
        /* All set, send it off. */
 
-       osdc = &rbd_dev->rbd_client->client->osdc;
-       img_result = rbd_obj_request_submit(osdc, orig_request);
-       if (!img_result)
-               return;
+       rbd_obj_request_submit(orig_request);
+       return;
+
 out_err:
        /* Record the error code and complete the request */
 
@@ -2860,17 +2855,13 @@ static void rbd_img_obj_exists_callback(struct rbd_obj_request *obj_request)
 
        /*
         * If the overlap has become 0 (most likely because the
-        * image has been flattened) we need to free the pages
-        * and re-submit the original write request.
+        * image has been flattened) we need to re-submit the
+        * original request.
         */
        rbd_dev = orig_request->img_request->rbd_dev;
        if (!rbd_dev->parent_overlap) {
-               struct ceph_osd_client *osdc;
-
-               osdc = &rbd_dev->rbd_client->client->osdc;
-               result = rbd_obj_request_submit(osdc, orig_request);
-               if (!result)
-                       return;
+               rbd_obj_request_submit(orig_request);
+               return;
        }
 
        /*
@@ -2902,7 +2893,6 @@ static int rbd_img_obj_exists_submit(struct rbd_obj_request *obj_request)
 {
        struct rbd_obj_request *stat_request;
        struct rbd_device *rbd_dev;
-       struct ceph_osd_client *osdc;
        struct page **pages = NULL;
        u32 page_count;
        size_t size;
@@ -2946,8 +2936,9 @@ static int rbd_img_obj_exists_submit(struct rbd_obj_request *obj_request)
                                        false, false);
        rbd_osd_req_format_read(stat_request);
 
-       osdc = &rbd_dev->rbd_client->client->osdc;
-       ret = rbd_obj_request_submit(osdc, stat_request);
+       rbd_obj_request_submit(stat_request);
+       return 0;
+
 out:
        if (ret)
                rbd_obj_request_put(obj_request);
@@ -3004,13 +2995,8 @@ static bool img_obj_request_simple(struct rbd_obj_request *obj_request)
 static int rbd_img_obj_request_submit(struct rbd_obj_request *obj_request)
 {
        if (img_obj_request_simple(obj_request)) {
-               struct rbd_device *rbd_dev;
-               struct ceph_osd_client *osdc;
-
-               rbd_dev = obj_request->img_request->rbd_dev;
-               osdc = &rbd_dev->rbd_client->client->osdc;
-
-               return rbd_obj_request_submit(osdc, obj_request);
+               rbd_obj_request_submit(obj_request);
+               return 0;
        }
 
        /*
@@ -3073,12 +3059,8 @@ static void rbd_img_parent_read_callback(struct rbd_img_request *img_request)
        rbd_assert(obj_request->img_request);
        rbd_dev = obj_request->img_request->rbd_dev;
        if (!rbd_dev->parent_overlap) {
-               struct ceph_osd_client *osdc;
-
-               osdc = &rbd_dev->rbd_client->client->osdc;
-               img_result = rbd_obj_request_submit(osdc, obj_request);
-               if (!img_result)
-                       return;
+               rbd_obj_request_submit(obj_request);
+               return;
        }
 
        obj_request->result = img_result;
@@ -4005,7 +3987,6 @@ static int rbd_obj_method_sync(struct rbd_device *rbd_dev,
                             void *inbound,
                             size_t inbound_size)
 {
-       struct ceph_osd_client *osdc = &rbd_dev->rbd_client->client->osdc;
        struct rbd_obj_request *obj_request;
        struct page **pages;
        u32 page_count;
@@ -4056,9 +4037,7 @@ static int rbd_obj_method_sync(struct rbd_device *rbd_dev,
                                        0, false, false);
        rbd_osd_req_format_read(obj_request);
 
-       ret = rbd_obj_request_submit(osdc, obj_request);
-       if (ret)
-               goto out;
+       rbd_obj_request_submit(obj_request);
        ret = rbd_obj_request_wait(obj_request);
        if (ret)
                goto out;
@@ -4266,7 +4245,6 @@ static int rbd_obj_read_sync(struct rbd_device *rbd_dev,
                                u64 offset, u64 length, void *buf)
 
 {
-       struct ceph_osd_client *osdc = &rbd_dev->rbd_client->client->osdc;
        struct rbd_obj_request *obj_request;
        struct page **pages = NULL;
        u32 page_count;
@@ -4301,9 +4279,7 @@ static int rbd_obj_read_sync(struct rbd_device *rbd_dev,
                                        false, false);
        rbd_osd_req_format_read(obj_request);
 
-       ret = rbd_obj_request_submit(osdc, obj_request);
-       if (ret)
-               goto out;
+       rbd_obj_request_submit(obj_request);
        ret = rbd_obj_request_wait(obj_request);
        if (ret)
                goto out;