Lines Matching refs:obj_request
340 struct rbd_obj_request *obj_request; /* obj req initiator */ member
1269 static void rbd_obj_request_put(struct rbd_obj_request *obj_request) in rbd_obj_request_put() argument
1271 rbd_assert(obj_request != NULL); in rbd_obj_request_put()
1272 dout("%s: obj %p (was %d)\n", __func__, obj_request, in rbd_obj_request_put()
1273 kref_read(&obj_request->kref)); in rbd_obj_request_put()
1274 kref_put(&obj_request->kref, rbd_obj_request_destroy); in rbd_obj_request_put()
1278 struct rbd_obj_request *obj_request) in rbd_img_obj_request_add() argument
1280 rbd_assert(obj_request->img_request == NULL); in rbd_img_obj_request_add()
1283 obj_request->img_request = img_request; in rbd_img_obj_request_add()
1284 dout("%s: img %p obj %p\n", __func__, img_request, obj_request); in rbd_img_obj_request_add()
1288 struct rbd_obj_request *obj_request) in rbd_img_obj_request_del() argument
1290 dout("%s: img %p obj %p\n", __func__, img_request, obj_request); in rbd_img_obj_request_del()
1291 list_del(&obj_request->ex.oe_item); in rbd_img_obj_request_del()
1292 rbd_assert(obj_request->img_request == img_request); in rbd_img_obj_request_del()
1293 rbd_obj_request_put(obj_request); in rbd_img_obj_request_del()
1409 struct rbd_obj_request *obj_request = osd_req->r_priv; in rbd_osd_format_read() local
1410 struct rbd_device *rbd_dev = obj_request->img_request->rbd_dev; in rbd_osd_format_read()
1414 osd_req->r_snapid = obj_request->img_request->snap_id; in rbd_osd_format_read()
1419 struct rbd_obj_request *obj_request = osd_req->r_priv; in rbd_osd_format_write() local
1423 osd_req->r_data_offset = obj_request->ex.oe_off; in rbd_osd_format_write()
1471 struct rbd_obj_request *obj_request; in rbd_obj_request_create() local
1473 obj_request = kmem_cache_zalloc(rbd_obj_request_cache, GFP_NOIO); in rbd_obj_request_create()
1474 if (!obj_request) in rbd_obj_request_create()
1477 ceph_object_extent_init(&obj_request->ex); in rbd_obj_request_create()
1478 INIT_LIST_HEAD(&obj_request->osd_reqs); in rbd_obj_request_create()
1479 mutex_init(&obj_request->state_mutex); in rbd_obj_request_create()
1480 kref_init(&obj_request->kref); in rbd_obj_request_create()
1482 dout("%s %p\n", __func__, obj_request); in rbd_obj_request_create()
1483 return obj_request; in rbd_obj_request_create()
1488 struct rbd_obj_request *obj_request; in rbd_obj_request_destroy() local
1492 obj_request = container_of(kref, struct rbd_obj_request, kref); in rbd_obj_request_destroy()
1494 dout("%s: obj %p\n", __func__, obj_request); in rbd_obj_request_destroy()
1496 while (!list_empty(&obj_request->osd_reqs)) { in rbd_obj_request_destroy()
1497 osd_req = list_first_entry(&obj_request->osd_reqs, in rbd_obj_request_destroy()
1503 switch (obj_request->img_request->data_type) { in rbd_obj_request_destroy()
1509 kfree(obj_request->bvec_pos.bvecs); in rbd_obj_request_destroy()
1515 kfree(obj_request->img_extents); in rbd_obj_request_destroy()
1516 if (obj_request->copyup_bvecs) { in rbd_obj_request_destroy()
1517 for (i = 0; i < obj_request->copyup_bvec_count; i++) { in rbd_obj_request_destroy()
1518 if (obj_request->copyup_bvecs[i].bv_page) in rbd_obj_request_destroy()
1519 __free_page(obj_request->copyup_bvecs[i].bv_page); in rbd_obj_request_destroy()
1521 kfree(obj_request->copyup_bvecs); in rbd_obj_request_destroy()
1524 kmem_cache_free(rbd_obj_request_cache, obj_request); in rbd_obj_request_destroy()
1621 struct rbd_obj_request *obj_request; in rbd_img_request_destroy() local
1627 for_each_obj_request_safe(img_request, obj_request, next_obj_request) in rbd_img_request_destroy()
1628 rbd_img_obj_request_del(img_request, obj_request); in rbd_img_request_destroy()
2806 child_img_req->obj_request = obj_req; in rbd_obj_read_from_parent()
3602 struct rbd_obj_request *obj_req = img_req->obj_request; in rbd_img_handle_request()