diff options
-rw-r--r-- | drivers/block/rbd.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 93369a1a08e1..c259b4089e95 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c | |||
@@ -1889,7 +1889,8 @@ static int rbd_obj_method_sync(struct rbd_device *rbd_dev, | |||
1889 | ret = obj_request->result; | 1889 | ret = obj_request->result; |
1890 | if (ret < 0) | 1890 | if (ret < 0) |
1891 | goto out; | 1891 | goto out; |
1892 | ret = ceph_copy_from_page_vector(pages, inbound, 0, | 1892 | ret = 0; |
1893 | (void) ceph_copy_from_page_vector(pages, inbound, 0, | ||
1893 | obj_request->xferred); | 1894 | obj_request->xferred); |
1894 | if (version) | 1895 | if (version) |
1895 | *version = obj_request->version; | 1896 | *version = obj_request->version; |
@@ -2088,7 +2089,9 @@ static int rbd_obj_read_sync(struct rbd_device *rbd_dev, | |||
2088 | 2089 | ||
2089 | rbd_assert(obj_request->xferred <= (u64) SIZE_MAX); | 2090 | rbd_assert(obj_request->xferred <= (u64) SIZE_MAX); |
2090 | size = (size_t) obj_request->xferred; | 2091 | size = (size_t) obj_request->xferred; |
2091 | ret = ceph_copy_from_page_vector(pages, buf, 0, size); | 2092 | (void) ceph_copy_from_page_vector(pages, buf, 0, size); |
2093 | rbd_assert(size <= (size_t) INT_MAX); | ||
2094 | ret = (int) size; | ||
2092 | if (version) | 2095 | if (version) |
2093 | *version = obj_request->version; | 2096 | *version = obj_request->version; |
2094 | out: | 2097 | out: |
@@ -2141,7 +2144,6 @@ rbd_dev_v1_header_read(struct rbd_device *rbd_dev, u64 *version) | |||
2141 | ret = rbd_obj_read_sync(rbd_dev, rbd_dev->header_name, | 2144 | ret = rbd_obj_read_sync(rbd_dev, rbd_dev->header_name, |
2142 | 0, size, | 2145 | 0, size, |
2143 | (char *) ondisk, version); | 2146 | (char *) ondisk, version); |
2144 | |||
2145 | if (ret < 0) | 2147 | if (ret < 0) |
2146 | goto out_err; | 2148 | goto out_err; |
2147 | if (WARN_ON((size_t) ret < size)) { | 2149 | if (WARN_ON((size_t) ret < size)) { |
@@ -2803,7 +2805,6 @@ static int rbd_dev_v2_object_prefix(struct rbd_device *rbd_dev) | |||
2803 | dout("%s: rbd_obj_method_sync returned %d\n", __func__, ret); | 2805 | dout("%s: rbd_obj_method_sync returned %d\n", __func__, ret); |
2804 | if (ret < 0) | 2806 | if (ret < 0) |
2805 | goto out; | 2807 | goto out; |
2806 | ret = 0; /* rbd_obj_method_sync() can return positive */ | ||
2807 | 2808 | ||
2808 | p = reply_buf; | 2809 | p = reply_buf; |
2809 | rbd_dev->header.object_prefix = ceph_extract_encoded_string(&p, | 2810 | rbd_dev->header.object_prefix = ceph_extract_encoded_string(&p, |
@@ -3742,7 +3743,6 @@ static int rbd_dev_image_id(struct rbd_device *rbd_dev) | |||
3742 | dout("%s: rbd_obj_method_sync returned %d\n", __func__, ret); | 3743 | dout("%s: rbd_obj_method_sync returned %d\n", __func__, ret); |
3743 | if (ret < 0) | 3744 | if (ret < 0) |
3744 | goto out; | 3745 | goto out; |
3745 | ret = 0; /* rbd_obj_method_sync() can return positive */ | ||
3746 | 3746 | ||
3747 | p = response; | 3747 | p = response; |
3748 | rbd_dev->spec->image_id = ceph_extract_encoded_string(&p, | 3748 | rbd_dev->spec->image_id = ceph_extract_encoded_string(&p, |