Lines Matching refs:req
244 static void finish_netfs_read(struct ceph_osd_request *req)
246 struct inode *inode = req->r_inode;
248 struct ceph_osd_data *osd_data = osd_req_op_extent_osd_data(req, 0);
249 struct netfs_io_subrequest *subreq = req->r_priv;
250 struct ceph_osd_req_op *op = &req->r_ops[0];
251 int err = req->r_result;
254 ceph_update_read_metrics(&fsc->mdsc->metric, req->r_start_latency,
255 req->r_end_latency, osd_data->length, err);
257 dout("%s: result %d subreq->len=%zu i_size=%lld\n", __func__, req->r_result,
258 subreq->len, i_size_read(req->r_inode));
287 iput(req->r_inode);
297 struct ceph_mds_request *req;
313 req = ceph_mdsc_create_request(mdsc, CEPH_MDS_OP_GETATTR, mode);
314 if (IS_ERR(req)) {
315 err = PTR_ERR(req);
318 req->r_ino1 = ci->i_vino;
319 req->r_args.getattr.mask = cpu_to_le32(CEPH_STAT_CAP_INLINE_DATA);
320 req->r_num_caps = 2;
322 err = ceph_mdsc_do_request(mdsc, NULL, req);
326 rinfo = &req->r_reply_info;
330 ceph_mdsc_put_request(req);
340 ceph_mdsc_put_request(req);
352 struct ceph_osd_request *req = NULL;
370 req = ceph_osdc_new_request(&fsc->client->osdc, &ci->i_layout, vino,
374 if (IS_ERR(req)) {
375 err = PTR_ERR(req);
376 req = NULL;
381 err = ceph_alloc_sparse_ext_map(&req->r_ops[0]);
413 osd_req_op_extent_osd_data_pages(req, 0, pages, len, 0, false,
416 osd_req_op_extent_osd_iter(req, 0, &iter);
422 req->r_callback = finish_netfs_read;
423 req->r_priv = subreq;
424 req->r_inode = inode;
427 ceph_osdc_start_request(req->r_osdc, req);
429 ceph_osdc_put_request(req);
669 struct ceph_osd_request *req;
715 req = ceph_osdc_new_request(osdc, &ci->i_layout, ceph_vino(inode),
720 if (IS_ERR(req)) {
722 return PTR_ERR(req);
740 ceph_osdc_put_request(req);
747 osd_req_op_extent_osd_data_pages(req, 0,
753 req->r_mtime = inode->i_mtime;
754 ceph_osdc_start_request(osdc, req);
755 err = ceph_osdc_wait_request(osdc, req);
757 ceph_update_write_metrics(&fsc->mdsc->metric, req->r_start_latency,
758 req->r_end_latency, len, err);
760 ceph_osdc_put_request(req);
828 static void writepages_finish(struct ceph_osd_request *req)
830 struct inode *inode = req->r_inode;
836 int rc = req->r_result;
837 struct ceph_snap_context *snapc = req->r_snapc;
863 for (i = 0; i < req->r_num_ops; i++) {
864 if (req->r_ops[i].op != CEPH_OSD_OP_WRITE) {
865 pr_warn("%s incorrect op %d req %p index %d tid %llu\n",
866 __func__, req->r_ops[i].op, req, i, req->r_tid);
870 osd_data = osd_req_op_extent_osd_data(req, i);
907 ceph_update_write_metrics(&fsc->mdsc->metric, req->r_start_latency,
908 req->r_end_latency, len, rc);
912 osd_data = osd_req_op_extent_osd_data(req, 0);
917 ceph_osdc_put_request(req);
936 struct ceph_osd_request *req = NULL;
1206 req = ceph_osdc_new_request(&fsc->client->osdc,
1212 if (IS_ERR(req)) {
1213 req = ceph_osdc_new_request(&fsc->client->osdc,
1222 BUG_ON(IS_ERR(req));
1231 req->r_callback = writepages_finish;
1232 req->r_inode = inode;
1248 if (op_idx + 1 == req->r_num_ops)
1255 osd_req_op_extent_dup_last(req, op_idx,
1259 osd_req_op_extent_osd_data_pages(req, op_idx,
1262 osd_req_op_extent_update(req, op_idx, len);
1298 osd_req_op_extent_osd_data_pages(req, op_idx, data_pages, len,
1300 osd_req_op_extent_update(req, op_idx, len);
1302 BUG_ON(op_idx + 1 != req->r_num_ops);
1306 BUG_ON(num_ops <= req->r_num_ops);
1307 num_ops -= req->r_num_ops;
1324 BUG_ON(num_ops != req->r_num_ops);
1330 req->r_mtime = inode->i_mtime;
1331 ceph_osdc_start_request(&fsc->client->osdc, req);
1332 req = NULL;
1391 ceph_osdc_put_request(req);
1827 struct ceph_osd_request *req = NULL;
1869 req = ceph_osdc_new_request(&fsc->client->osdc, &ci->i_layout,
1873 if (IS_ERR(req)) {
1874 err = PTR_ERR(req);
1878 req->r_mtime = inode->i_mtime;
1879 ceph_osdc_start_request(&fsc->client->osdc, req);
1880 err = ceph_osdc_wait_request(&fsc->client->osdc, req);
1881 ceph_osdc_put_request(req);
1885 req = ceph_osdc_new_request(&fsc->client->osdc, &ci->i_layout,
1890 if (IS_ERR(req)) {
1891 err = PTR_ERR(req);
1896 osd_req_op_extent_osd_data_pages(req, 1, pages, len, 0, false, false);
1900 err = osd_req_op_xattr_init(req, 0, CEPH_OSD_OP_CMPXATTR,
1913 err = osd_req_op_xattr_init(req, 2, CEPH_OSD_OP_SETXATTR,
1920 req->r_mtime = inode->i_mtime;
1921 ceph_osdc_start_request(&fsc->client->osdc, req);
1922 err = ceph_osdc_wait_request(&fsc->client->osdc, req);
1924 ceph_update_write_metrics(&fsc->mdsc->metric, req->r_start_latency,
1925 req->r_end_latency, len, err);
1942 ceph_osdc_put_request(req);