Lines Matching refs:ireq
283 struct i2o_block_request *ireq; in i2o_block_request_alloc() local
285 ireq = mempool_alloc(i2o_blk_req_pool.pool, GFP_ATOMIC); in i2o_block_request_alloc()
286 if (!ireq) in i2o_block_request_alloc()
289 INIT_LIST_HEAD(&ireq->queue); in i2o_block_request_alloc()
290 sg_init_table(ireq->sg_table, I2O_MAX_PHYS_SEGMENTS); in i2o_block_request_alloc()
292 return ireq; in i2o_block_request_alloc()
301 static inline void i2o_block_request_free(struct i2o_block_request *ireq) in i2o_block_request_free() argument
303 mempool_free(ireq, i2o_blk_req_pool.pool); in i2o_block_request_free()
317 struct i2o_block_request *ireq, in i2o_block_sglist_alloc() argument
323 ireq->dev = &c->pdev->dev; in i2o_block_sglist_alloc()
324 nents = blk_rq_map_sg(ireq->req->q, ireq->req, ireq->sg_table); in i2o_block_sglist_alloc()
326 if (rq_data_dir(ireq->req) == READ) in i2o_block_sglist_alloc()
331 ireq->sg_nents = nents; in i2o_block_sglist_alloc()
333 return i2o_dma_map_sg(c, ireq->sg_table, nents, direction, mptr); in i2o_block_sglist_alloc()
342 static inline void i2o_block_sglist_free(struct i2o_block_request *ireq) in i2o_block_sglist_free() argument
346 if (rq_data_dir(ireq->req) == READ) in i2o_block_sglist_free()
351 dma_unmap_sg(ireq->dev, ireq->sg_table, ireq->sg_nents, direction); in i2o_block_sglist_free()
367 struct i2o_block_request *ireq; in i2o_block_prep_req_fn() local
376 ireq = i2o_block_request_alloc(); in i2o_block_prep_req_fn()
377 if (IS_ERR(ireq)) { in i2o_block_prep_req_fn()
382 ireq->i2o_blk_dev = i2o_blk_dev; in i2o_block_prep_req_fn()
383 req->special = ireq; in i2o_block_prep_req_fn()
384 ireq->req = req; in i2o_block_prep_req_fn()
427 struct i2o_block_request *ireq = req->special; in i2o_block_end_request() local
428 struct i2o_block_device *dev = ireq->i2o_blk_dev; in i2o_block_end_request()
440 list_del(&ireq->queue); in i2o_block_end_request()
447 i2o_block_sglist_free(ireq); in i2o_block_end_request()
448 i2o_block_request_free(ireq); in i2o_block_end_request()
732 struct i2o_block_request *ireq = req->special; in i2o_block_transfer() local
859 if (!i2o_block_sglist_alloc(c, ireq, &mptr)) { in i2o_block_transfer()
867 list_add_tail(&ireq->queue, &dev->open_queue); in i2o_block_transfer()
899 struct i2o_block_request *ireq = req->special; in i2o_block_request_fn() local
902 queue_depth = ireq->i2o_blk_dev->open_queue_depth; in i2o_block_request_fn()