Lines Matching refs:img_request
294 struct rbd_img_request *img_request; member
1315 switch (obj_req->img_request->data_type) { in rbd_obj_zero_range()
1337 static inline void rbd_img_obj_request_add(struct rbd_img_request *img_request, in rbd_img_obj_request_add() argument
1340 rbd_assert(obj_request->img_request == NULL); in rbd_img_obj_request_add()
1343 obj_request->img_request = img_request; in rbd_img_obj_request_add()
1344 dout("%s: img %p obj %p\n", __func__, img_request, obj_request); in rbd_img_obj_request_add()
1347 static inline void rbd_img_obj_request_del(struct rbd_img_request *img_request, in rbd_img_obj_request_del() argument
1350 dout("%s: img %p obj %p\n", __func__, img_request, obj_request); in rbd_img_obj_request_del()
1352 rbd_assert(obj_request->img_request == img_request); in rbd_img_obj_request_del()
1371 static void img_request_layered_set(struct rbd_img_request *img_request) in img_request_layered_set() argument
1373 set_bit(IMG_REQ_LAYERED, &img_request->flags); in img_request_layered_set()
1376 static bool img_request_layered_test(struct rbd_img_request *img_request) in img_request_layered_test() argument
1378 return test_bit(IMG_REQ_LAYERED, &img_request->flags) != 0; in img_request_layered_test()
1383 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_is_entire()
1391 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_is_tail()
1404 !obj_req->img_request->snapc->num_snaps)) in rbd_obj_copyup_enabled()
1443 if (osd_req->r_result > 0 && rbd_img_is_write(obj_req->img_request)) in rbd_osd_req_callback()
1454 struct rbd_device *rbd_dev = obj_request->img_request->rbd_dev; in rbd_osd_format_read()
1458 osd_req->r_snapid = obj_request->img_request->snap_id; in rbd_osd_format_read()
1474 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in __rbd_obj_add_osd_request()
1508 return __rbd_obj_add_osd_request(obj_req, obj_req->img_request->snapc, in rbd_obj_add_osd_request()
1546 switch (obj_request->img_request->data_type) { in rbd_obj_request_destroy()
1630 static void rbd_img_request_init(struct rbd_img_request *img_request, in rbd_img_request_init() argument
1634 memset(img_request, 0, sizeof(*img_request)); in rbd_img_request_init()
1636 img_request->rbd_dev = rbd_dev; in rbd_img_request_init()
1637 img_request->op_type = op_type; in rbd_img_request_init()
1639 INIT_LIST_HEAD(&img_request->lock_item); in rbd_img_request_init()
1640 INIT_LIST_HEAD(&img_request->object_extents); in rbd_img_request_init()
1641 mutex_init(&img_request->state_mutex); in rbd_img_request_init()
1659 static void rbd_img_request_destroy(struct rbd_img_request *img_request) in rbd_img_request_destroy() argument
1664 dout("%s: img %p\n", __func__, img_request); in rbd_img_request_destroy()
1666 WARN_ON(!list_empty(&img_request->lock_item)); in rbd_img_request_destroy()
1667 for_each_obj_request_safe(img_request, obj_request, next_obj_request) in rbd_img_request_destroy()
1668 rbd_img_obj_request_del(img_request, obj_request); in rbd_img_request_destroy()
1670 if (img_request_layered_test(img_request)) in rbd_img_request_destroy()
1671 rbd_dev_parent_put(img_request->rbd_dev); in rbd_img_request_destroy()
1673 if (rbd_img_is_write(img_request)) in rbd_img_request_destroy()
1674 ceph_put_snap_context(img_request->snapc); in rbd_img_request_destroy()
1676 if (test_bit(IMG_REQ_CHILD, &img_request->flags)) in rbd_img_request_destroy()
1677 kmem_cache_free(rbd_img_request_cache, img_request); in rbd_img_request_destroy()
1993 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_object_map_update_finish()
2100 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_object_map_update()
2178 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_calc_img_extents()
2202 switch (obj_req->img_request->data_type) { in rbd_osd_setup_data()
2269 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in __rbd_osd_setup_write_ops()
2330 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_init_discard()
2421 struct rbd_img_request *img_req = obj_req->img_request; in count_write_ops()
2448 switch (obj_req->img_request->op_type) { in rbd_osd_setup_write_ops()
2804 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_may_exist()
2840 struct rbd_img_request *img_req = obj_req->img_request; in rbd_obj_read_from_parent()
2896 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_advance_read()
2973 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_write_is_noop()
2995 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_write_pre_object_map()
3156 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_copyup_read_parent()
3181 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_copyup_object_maps()
3182 struct ceph_snap_context *snapc = obj_req->img_request->snapc; in rbd_obj_copyup_object_maps()
3229 if (obj_req->img_request->snapc->num_snaps && bytes > 0) { in rbd_obj_copyup_write_object()
3257 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_advance_copyup()
3331 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_write_post_object_map()
3346 struct rbd_device *rbd_dev = obj_req->img_request->rbd_dev; in rbd_obj_advance_write()
3433 struct rbd_img_request *img_req = obj_req->img_request; in __rbd_obj_handle_request()
3460 rbd_img_handle_request(obj_req->img_request, result); in rbd_obj_handle_request()
3646 img_req = obj_req->img_request; in rbd_img_handle_request()
4696 struct rbd_img_request *img_request = in rbd_queue_workfn() local
4698 struct rbd_device *rbd_dev = img_request->rbd_dev; in rbd_queue_workfn()
4699 enum obj_operation_type op_type = img_request->op_type; in rbd_queue_workfn()
4700 struct request *rq = blk_mq_rq_from_pdu(img_request); in rbd_queue_workfn()
4717 rbd_img_capture_header(img_request); in rbd_queue_workfn()
4728 img_request, obj_op_name(op_type), offset, length); in rbd_queue_workfn()
4731 result = rbd_img_fill_nodata(img_request, offset, length); in rbd_queue_workfn()
4733 result = rbd_img_fill_from_bio(img_request, offset, length, in rbd_queue_workfn()
4738 rbd_img_handle_request(img_request, 0); in rbd_queue_workfn()
4742 rbd_img_request_destroy(img_request); in rbd_queue_workfn()