Lines Matching refs:q
139 static int blk_fill_sgv4_hdr_rq(struct request_queue *q, struct request *rq, in blk_fill_sgv4_hdr_rq() argument
166 rq->timeout = q->sg_timeout; in blk_fill_sgv4_hdr_rq()
179 bsg_validate_sgv4_hdr(struct request_queue *q, struct sg_io_v4 *hdr, int *rw) in bsg_validate_sgv4_hdr() argument
211 struct request_queue *q = bd->queue; in bsg_map_hdr() local
216 struct bsg_class_device *bcd = &q->bsg_dev; in bsg_map_hdr()
229 ret = bsg_validate_sgv4_hdr(q, hdr, &rw); in bsg_map_hdr()
236 rq = blk_get_request(q, rw, GFP_KERNEL); in bsg_map_hdr()
241 ret = blk_fill_sgv4_hdr_rq(q, rq, hdr, bd, has_write_perm); in bsg_map_hdr()
246 if (!test_bit(QUEUE_FLAG_BIDI, &q->queue_flags)) { in bsg_map_hdr()
251 next_rq = blk_get_request(q, READ, GFP_KERNEL); in bsg_map_hdr()
261 ret = blk_rq_map_user(q, next_rq, NULL, dxferp, in bsg_map_hdr()
277 ret = blk_rq_map_user(q, rq, NULL, dxferp, dxfer_len, in bsg_map_hdr()
325 static void bsg_add_command(struct bsg_device *bd, struct request_queue *q, in bsg_add_command() argument
345 blk_execute_rq_nowait(q, NULL, rq, at_head, bsg_rq_end_io); in bsg_add_command()
611 struct request_queue *q = bd->queue; in __bsg_write() local
635 bsg_add_command(bd, q, bc, rq); in __bsg_write()
715 struct request_queue *q = bd->queue; in bsg_put_device() local
744 kref_put(&q->bsg_dev.ref, bsg_kref_release_function); in bsg_put_device()
746 blk_put_queue(q); in bsg_put_device()
783 static struct bsg_device *__bsg_get_device(int minor, struct request_queue *q) in __bsg_get_device() argument
790 if (bd->queue == q) { in __bsg_get_device()
959 void bsg_unregister_queue(struct request_queue *q) in bsg_unregister_queue() argument
961 struct bsg_class_device *bcd = &q->bsg_dev; in bsg_unregister_queue()
968 if (q->kobj.sd) in bsg_unregister_queue()
969 sysfs_remove_link(&q->kobj, "bsg"); in bsg_unregister_queue()
977 int bsg_register_queue(struct request_queue *q, struct device *parent, in bsg_register_queue() argument
994 if (!queue_is_rq_based(q)) in bsg_register_queue()
997 bcd = &q->bsg_dev; in bsg_register_queue()
1012 bcd->queue = q; in bsg_register_queue()
1024 if (q->kobj.sd) { in bsg_register_queue()
1025 ret = sysfs_create_link(&q->kobj, &bcd->class_dev->kobj, "bsg"); in bsg_register_queue()