diff options
author | Alex Elder <elder@inktank.com> | 2013-04-30 01:44:33 -0400 |
---|---|---|
committer | Sage Weil <sage@inktank.com> | 2013-05-02 00:20:15 -0400 |
commit | cc4a38bdd587a1843540989f262feb7bdc43c468 (patch) | |
tree | 51c3e2efbb94682cea251d1d3f3e1c0f0be6c800 | |
parent | 7097f8df6e679207c949673d2959505b59a1a30e (diff) |
rbd: more version parameter removal
Continued from the last patch, more parameters that can go away
because we no longer have a need to track object versions.
Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
-rw-r--r-- | drivers/block/rbd.c | 39 |
1 files changed, 18 insertions, 21 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 77265710dd1a..613750933588 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c | |||
@@ -429,8 +429,8 @@ static int rbd_img_obj_request_submit(struct rbd_obj_request *obj_request); | |||
429 | static void rbd_img_parent_read(struct rbd_obj_request *obj_request); | 429 | static void rbd_img_parent_read(struct rbd_obj_request *obj_request); |
430 | static void rbd_dev_remove_parent(struct rbd_device *rbd_dev); | 430 | static void rbd_dev_remove_parent(struct rbd_device *rbd_dev); |
431 | 431 | ||
432 | static int rbd_dev_refresh(struct rbd_device *rbd_dev, u64 *hver); | 432 | static int rbd_dev_refresh(struct rbd_device *rbd_dev); |
433 | static int rbd_dev_v2_refresh(struct rbd_device *rbd_dev, u64 *hver); | 433 | static int rbd_dev_v2_refresh(struct rbd_device *rbd_dev); |
434 | 434 | ||
435 | static int rbd_open(struct block_device *bdev, fmode_t mode) | 435 | static int rbd_open(struct block_device *bdev, fmode_t mode) |
436 | { | 436 | { |
@@ -2468,8 +2468,7 @@ out_err: | |||
2468 | obj_request_done_set(obj_request); | 2468 | obj_request_done_set(obj_request); |
2469 | } | 2469 | } |
2470 | 2470 | ||
2471 | static int rbd_obj_notify_ack(struct rbd_device *rbd_dev, | 2471 | static int rbd_obj_notify_ack(struct rbd_device *rbd_dev, u64 notify_id) |
2472 | u64 ver, u64 notify_id) | ||
2473 | { | 2472 | { |
2474 | struct rbd_obj_request *obj_request; | 2473 | struct rbd_obj_request *obj_request; |
2475 | struct ceph_osd_client *osdc = &rbd_dev->rbd_client->client->osdc; | 2474 | struct ceph_osd_client *osdc = &rbd_dev->rbd_client->client->osdc; |
@@ -2487,7 +2486,7 @@ static int rbd_obj_notify_ack(struct rbd_device *rbd_dev, | |||
2487 | obj_request->callback = rbd_obj_request_put; | 2486 | obj_request->callback = rbd_obj_request_put; |
2488 | 2487 | ||
2489 | osd_req_op_watch_init(obj_request->osd_req, 0, CEPH_OSD_OP_NOTIFY_ACK, | 2488 | osd_req_op_watch_init(obj_request->osd_req, 0, CEPH_OSD_OP_NOTIFY_ACK, |
2490 | notify_id, ver, 0); | 2489 | notify_id, 0, 0); |
2491 | rbd_osd_req_format_read(obj_request); | 2490 | rbd_osd_req_format_read(obj_request); |
2492 | 2491 | ||
2493 | ret = rbd_obj_request_submit(osdc, obj_request); | 2492 | ret = rbd_obj_request_submit(osdc, obj_request); |
@@ -2501,17 +2500,16 @@ out: | |||
2501 | static void rbd_watch_cb(u64 ver, u64 notify_id, u8 opcode, void *data) | 2500 | static void rbd_watch_cb(u64 ver, u64 notify_id, u8 opcode, void *data) |
2502 | { | 2501 | { |
2503 | struct rbd_device *rbd_dev = (struct rbd_device *)data; | 2502 | struct rbd_device *rbd_dev = (struct rbd_device *)data; |
2504 | u64 hver; | ||
2505 | 2503 | ||
2506 | if (!rbd_dev) | 2504 | if (!rbd_dev) |
2507 | return; | 2505 | return; |
2508 | 2506 | ||
2509 | dout("%s: \"%s\" notify_id %llu opcode %u\n", __func__, | 2507 | dout("%s: \"%s\" notify_id %llu opcode %u\n", __func__, |
2510 | rbd_dev->header_name, (unsigned long long) notify_id, | 2508 | rbd_dev->header_name, (unsigned long long)notify_id, |
2511 | (unsigned int) opcode); | 2509 | (unsigned int)opcode); |
2512 | (void)rbd_dev_refresh(rbd_dev, &hver); | 2510 | (void)rbd_dev_refresh(rbd_dev); |
2513 | 2511 | ||
2514 | rbd_obj_notify_ack(rbd_dev, hver, notify_id); | 2512 | rbd_obj_notify_ack(rbd_dev, notify_id); |
2515 | } | 2513 | } |
2516 | 2514 | ||
2517 | /* | 2515 | /* |
@@ -3014,7 +3012,7 @@ static void rbd_update_mapping_size(struct rbd_device *rbd_dev) | |||
3014 | /* | 3012 | /* |
3015 | * only read the first part of the ondisk header, without the snaps info | 3013 | * only read the first part of the ondisk header, without the snaps info |
3016 | */ | 3014 | */ |
3017 | static int rbd_dev_v1_refresh(struct rbd_device *rbd_dev, u64 *hver) | 3015 | static int rbd_dev_v1_refresh(struct rbd_device *rbd_dev) |
3018 | { | 3016 | { |
3019 | int ret; | 3017 | int ret; |
3020 | struct rbd_image_header h; | 3018 | struct rbd_image_header h; |
@@ -3051,7 +3049,7 @@ static int rbd_dev_v1_refresh(struct rbd_device *rbd_dev, u64 *hver) | |||
3051 | return ret; | 3049 | return ret; |
3052 | } | 3050 | } |
3053 | 3051 | ||
3054 | static int rbd_dev_refresh(struct rbd_device *rbd_dev, u64 *hver) | 3052 | static int rbd_dev_refresh(struct rbd_device *rbd_dev) |
3055 | { | 3053 | { |
3056 | u64 image_size; | 3054 | u64 image_size; |
3057 | int ret; | 3055 | int ret; |
@@ -3060,9 +3058,9 @@ static int rbd_dev_refresh(struct rbd_device *rbd_dev, u64 *hver) | |||
3060 | image_size = rbd_dev->header.image_size; | 3058 | image_size = rbd_dev->header.image_size; |
3061 | mutex_lock_nested(&ctl_mutex, SINGLE_DEPTH_NESTING); | 3059 | mutex_lock_nested(&ctl_mutex, SINGLE_DEPTH_NESTING); |
3062 | if (rbd_dev->image_format == 1) | 3060 | if (rbd_dev->image_format == 1) |
3063 | ret = rbd_dev_v1_refresh(rbd_dev, hver); | 3061 | ret = rbd_dev_v1_refresh(rbd_dev); |
3064 | else | 3062 | else |
3065 | ret = rbd_dev_v2_refresh(rbd_dev, hver); | 3063 | ret = rbd_dev_v2_refresh(rbd_dev); |
3066 | mutex_unlock(&ctl_mutex); | 3064 | mutex_unlock(&ctl_mutex); |
3067 | if (ret) | 3065 | if (ret) |
3068 | rbd_warn(rbd_dev, "got notification but failed to " | 3066 | rbd_warn(rbd_dev, "got notification but failed to " |
@@ -3271,7 +3269,7 @@ static ssize_t rbd_image_refresh(struct device *dev, | |||
3271 | struct rbd_device *rbd_dev = dev_to_rbd_dev(dev); | 3269 | struct rbd_device *rbd_dev = dev_to_rbd_dev(dev); |
3272 | int ret; | 3270 | int ret; |
3273 | 3271 | ||
3274 | ret = rbd_dev_refresh(rbd_dev, NULL); | 3272 | ret = rbd_dev_refresh(rbd_dev); |
3275 | 3273 | ||
3276 | return ret < 0 ? ret : size; | 3274 | return ret < 0 ? ret : size; |
3277 | } | 3275 | } |
@@ -3824,7 +3822,7 @@ out_err: | |||
3824 | return ret; | 3822 | return ret; |
3825 | } | 3823 | } |
3826 | 3824 | ||
3827 | static int rbd_dev_v2_snap_context(struct rbd_device *rbd_dev, u64 *ver) | 3825 | static int rbd_dev_v2_snap_context(struct rbd_device *rbd_dev) |
3828 | { | 3826 | { |
3829 | size_t size; | 3827 | size_t size; |
3830 | int ret; | 3828 | int ret; |
@@ -3850,7 +3848,7 @@ static int rbd_dev_v2_snap_context(struct rbd_device *rbd_dev, u64 *ver) | |||
3850 | 3848 | ||
3851 | ret = rbd_obj_method_sync(rbd_dev, rbd_dev->header_name, | 3849 | ret = rbd_obj_method_sync(rbd_dev, rbd_dev->header_name, |
3852 | "rbd", "get_snapcontext", NULL, 0, | 3850 | "rbd", "get_snapcontext", NULL, 0, |
3853 | reply_buf, size, ver); | 3851 | reply_buf, size, NULL); |
3854 | dout("%s: rbd_obj_method_sync returned %d\n", __func__, ret); | 3852 | dout("%s: rbd_obj_method_sync returned %d\n", __func__, ret); |
3855 | if (ret < 0) | 3853 | if (ret < 0) |
3856 | goto out; | 3854 | goto out; |
@@ -3978,7 +3976,7 @@ static const char *rbd_dev_snap_info(struct rbd_device *rbd_dev, u32 which, | |||
3978 | return ERR_PTR(-EINVAL); | 3976 | return ERR_PTR(-EINVAL); |
3979 | } | 3977 | } |
3980 | 3978 | ||
3981 | static int rbd_dev_v2_refresh(struct rbd_device *rbd_dev, u64 *hver) | 3979 | static int rbd_dev_v2_refresh(struct rbd_device *rbd_dev) |
3982 | { | 3980 | { |
3983 | int ret; | 3981 | int ret; |
3984 | 3982 | ||
@@ -3989,7 +3987,7 @@ static int rbd_dev_v2_refresh(struct rbd_device *rbd_dev, u64 *hver) | |||
3989 | goto out; | 3987 | goto out; |
3990 | rbd_update_mapping_size(rbd_dev); | 3988 | rbd_update_mapping_size(rbd_dev); |
3991 | 3989 | ||
3992 | ret = rbd_dev_v2_snap_context(rbd_dev, hver); | 3990 | ret = rbd_dev_v2_snap_context(rbd_dev); |
3993 | dout("rbd_dev_v2_snap_context returned %d\n", ret); | 3991 | dout("rbd_dev_v2_snap_context returned %d\n", ret); |
3994 | if (ret) | 3992 | if (ret) |
3995 | goto out; | 3993 | goto out; |
@@ -4591,7 +4589,6 @@ out_err: | |||
4591 | static int rbd_dev_v2_probe(struct rbd_device *rbd_dev) | 4589 | static int rbd_dev_v2_probe(struct rbd_device *rbd_dev) |
4592 | { | 4590 | { |
4593 | int ret; | 4591 | int ret; |
4594 | u64 ver = 0; | ||
4595 | 4592 | ||
4596 | ret = rbd_dev_v2_image_size(rbd_dev); | 4593 | ret = rbd_dev_v2_image_size(rbd_dev); |
4597 | if (ret) | 4594 | if (ret) |
@@ -4641,7 +4638,7 @@ static int rbd_dev_v2_probe(struct rbd_device *rbd_dev) | |||
4641 | 4638 | ||
4642 | /* Get the snapshot context, plus the header version */ | 4639 | /* Get the snapshot context, plus the header version */ |
4643 | 4640 | ||
4644 | ret = rbd_dev_v2_snap_context(rbd_dev, &ver); | 4641 | ret = rbd_dev_v2_snap_context(rbd_dev); |
4645 | if (ret) | 4642 | if (ret) |
4646 | goto out_err; | 4643 | goto out_err; |
4647 | 4644 | ||