bsg: pass in desired timeout handler
This will ease in the conversion to blk-mq, where we can't set a timeout handler after queue init. Cc: Johannes Thumshirn <jthumshirn@suse.de> Cc: linux-scsi@vger.kernel.org Reviewed-by: Hannes Reinecke <hare@suse.com> Tested-by: Benjamin Block <bblock@linux.vnet.ibm.com> Tested-by: Ming Lei <ming.lei@redhat.com> Reviewed-by: Omar Sandoval <osandov@fb.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
@@ -3780,7 +3780,8 @@ fc_bsg_hostadd(struct Scsi_Host *shost, struct fc_host_attrs *fc_host)
|
||||
snprintf(bsg_name, sizeof(bsg_name),
|
||||
"fc_host%d", shost->host_no);
|
||||
|
||||
q = bsg_setup_queue(dev, bsg_name, fc_bsg_dispatch, i->f->dd_bsg_size);
|
||||
q = bsg_setup_queue(dev, bsg_name, fc_bsg_dispatch, fc_bsg_job_timeout,
|
||||
i->f->dd_bsg_size);
|
||||
if (IS_ERR(q)) {
|
||||
dev_err(dev,
|
||||
"fc_host%d: bsg interface failed to initialize - setup queue\n",
|
||||
@@ -3788,7 +3789,6 @@ fc_bsg_hostadd(struct Scsi_Host *shost, struct fc_host_attrs *fc_host)
|
||||
return PTR_ERR(q);
|
||||
}
|
||||
__scsi_init_queue(shost, q);
|
||||
blk_queue_rq_timed_out(q, fc_bsg_job_timeout);
|
||||
blk_queue_rq_timeout(q, FC_DEFAULT_BSG_TIMEOUT);
|
||||
fc_host->rqst_q = q;
|
||||
return 0;
|
||||
@@ -3826,14 +3826,13 @@ fc_bsg_rportadd(struct Scsi_Host *shost, struct fc_rport *rport)
|
||||
return -ENOTSUPP;
|
||||
|
||||
q = bsg_setup_queue(dev, dev_name(dev), fc_bsg_dispatch,
|
||||
i->f->dd_bsg_size);
|
||||
fc_bsg_job_timeout, i->f->dd_bsg_size);
|
||||
if (IS_ERR(q)) {
|
||||
dev_err(dev, "failed to setup bsg queue\n");
|
||||
return PTR_ERR(q);
|
||||
}
|
||||
__scsi_init_queue(shost, q);
|
||||
blk_queue_prep_rq(q, fc_bsg_rport_prep);
|
||||
blk_queue_rq_timed_out(q, fc_bsg_job_timeout);
|
||||
blk_queue_rq_timeout(q, BLK_DEFAULT_SG_TIMEOUT);
|
||||
rport->rqst_q = q;
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user