diff options
author | Ilya Dryomov <idryomov@gmail.com> | 2016-09-12 08:44:45 -0400 |
---|---|---|
committer | Ilya Dryomov <idryomov@gmail.com> | 2016-10-03 10:13:47 -0400 |
commit | 058aa9919147da9f088a96982a19ea0864139dc8 (patch) | |
tree | c8b7ac20433f952336aa3aabf62f79dba17cbcd2 /drivers/block/rbd.c | |
parent | 980917fc6ec94cb614fd79e6a124689e700f9d97 (diff) |
rbd: clean up asserts in rbd_img_obj_request_submit() helpers
Assert once in rbd_img_obj_request_submit().
Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Alex Elder <elder@linaro.org>
Reviewed-by: David Disseldorp <ddiss@suse.de>
Diffstat (limited to 'drivers/block/rbd.c')
-rw-r--r-- | drivers/block/rbd.c | 30 |
1 files changed, 10 insertions, 20 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 5c422402e408..fb7f86d123ea 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c | |||
@@ -2747,21 +2747,14 @@ out_err: | |||
2747 | */ | 2747 | */ |
2748 | static int rbd_img_obj_parent_read_full(struct rbd_obj_request *obj_request) | 2748 | static int rbd_img_obj_parent_read_full(struct rbd_obj_request *obj_request) |
2749 | { | 2749 | { |
2750 | struct rbd_img_request *img_request = NULL; | 2750 | struct rbd_device *rbd_dev = obj_request->img_request->rbd_dev; |
2751 | struct rbd_img_request *parent_request = NULL; | 2751 | struct rbd_img_request *parent_request = NULL; |
2752 | struct rbd_device *rbd_dev; | ||
2753 | u64 img_offset; | 2752 | u64 img_offset; |
2754 | u64 length; | 2753 | u64 length; |
2755 | struct page **pages = NULL; | 2754 | struct page **pages = NULL; |
2756 | u32 page_count; | 2755 | u32 page_count; |
2757 | int result; | 2756 | int result; |
2758 | 2757 | ||
2759 | rbd_assert(obj_request_img_data_test(obj_request)); | ||
2760 | rbd_assert(obj_request_type_valid(obj_request->type)); | ||
2761 | |||
2762 | img_request = obj_request->img_request; | ||
2763 | rbd_assert(img_request != NULL); | ||
2764 | rbd_dev = img_request->rbd_dev; | ||
2765 | rbd_assert(rbd_dev->parent != NULL); | 2758 | rbd_assert(rbd_dev->parent != NULL); |
2766 | 2759 | ||
2767 | /* | 2760 | /* |
@@ -2802,10 +2795,11 @@ static int rbd_img_obj_parent_read_full(struct rbd_obj_request *obj_request) | |||
2802 | result = rbd_img_request_fill(parent_request, OBJ_REQUEST_PAGES, pages); | 2795 | result = rbd_img_request_fill(parent_request, OBJ_REQUEST_PAGES, pages); |
2803 | if (result) | 2796 | if (result) |
2804 | goto out_err; | 2797 | goto out_err; |
2798 | |||
2805 | parent_request->copyup_pages = pages; | 2799 | parent_request->copyup_pages = pages; |
2806 | parent_request->copyup_page_count = page_count; | 2800 | parent_request->copyup_page_count = page_count; |
2807 | |||
2808 | parent_request->callback = rbd_img_obj_parent_read_full_callback; | 2801 | parent_request->callback = rbd_img_obj_parent_read_full_callback; |
2802 | |||
2809 | result = rbd_img_request_submit(parent_request); | 2803 | result = rbd_img_request_submit(parent_request); |
2810 | if (!result) | 2804 | if (!result) |
2811 | return 0; | 2805 | return 0; |
@@ -2891,8 +2885,8 @@ out: | |||
2891 | 2885 | ||
2892 | static int rbd_img_obj_exists_submit(struct rbd_obj_request *obj_request) | 2886 | static int rbd_img_obj_exists_submit(struct rbd_obj_request *obj_request) |
2893 | { | 2887 | { |
2888 | struct rbd_device *rbd_dev = obj_request->img_request->rbd_dev; | ||
2894 | struct rbd_obj_request *stat_request; | 2889 | struct rbd_obj_request *stat_request; |
2895 | struct rbd_device *rbd_dev; | ||
2896 | struct page **pages = NULL; | 2890 | struct page **pages = NULL; |
2897 | u32 page_count; | 2891 | u32 page_count; |
2898 | size_t size; | 2892 | size_t size; |
@@ -2923,8 +2917,6 @@ static int rbd_img_obj_exists_submit(struct rbd_obj_request *obj_request) | |||
2923 | stat_request->pages = pages; | 2917 | stat_request->pages = pages; |
2924 | stat_request->page_count = page_count; | 2918 | stat_request->page_count = page_count; |
2925 | 2919 | ||
2926 | rbd_assert(obj_request->img_request); | ||
2927 | rbd_dev = obj_request->img_request->rbd_dev; | ||
2928 | stat_request->osd_req = rbd_osd_req_create(rbd_dev, OBJ_OP_READ, 1, | 2920 | stat_request->osd_req = rbd_osd_req_create(rbd_dev, OBJ_OP_READ, 1, |
2929 | stat_request); | 2921 | stat_request); |
2930 | if (!stat_request->osd_req) | 2922 | if (!stat_request->osd_req) |
@@ -2948,14 +2940,8 @@ out: | |||
2948 | 2940 | ||
2949 | static bool img_obj_request_simple(struct rbd_obj_request *obj_request) | 2941 | static bool img_obj_request_simple(struct rbd_obj_request *obj_request) |
2950 | { | 2942 | { |
2951 | struct rbd_img_request *img_request; | 2943 | struct rbd_img_request *img_request = obj_request->img_request; |
2952 | struct rbd_device *rbd_dev; | 2944 | struct rbd_device *rbd_dev = img_request->rbd_dev; |
2953 | |||
2954 | rbd_assert(obj_request_img_data_test(obj_request)); | ||
2955 | |||
2956 | img_request = obj_request->img_request; | ||
2957 | rbd_assert(img_request); | ||
2958 | rbd_dev = img_request->rbd_dev; | ||
2959 | 2945 | ||
2960 | /* Reads */ | 2946 | /* Reads */ |
2961 | if (!img_request_write_test(img_request) && | 2947 | if (!img_request_write_test(img_request) && |
@@ -2994,6 +2980,10 @@ static bool img_obj_request_simple(struct rbd_obj_request *obj_request) | |||
2994 | 2980 | ||
2995 | static int rbd_img_obj_request_submit(struct rbd_obj_request *obj_request) | 2981 | static int rbd_img_obj_request_submit(struct rbd_obj_request *obj_request) |
2996 | { | 2982 | { |
2983 | rbd_assert(obj_request_img_data_test(obj_request)); | ||
2984 | rbd_assert(obj_request_type_valid(obj_request->type)); | ||
2985 | rbd_assert(obj_request->img_request); | ||
2986 | |||
2997 | if (img_obj_request_simple(obj_request)) { | 2987 | if (img_obj_request_simple(obj_request)) { |
2998 | rbd_obj_request_submit(obj_request); | 2988 | rbd_obj_request_submit(obj_request); |
2999 | return 0; | 2989 | return 0; |