aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/scsi/hosts.c2
-rw-r--r--drivers/scsi/scsi.c1
-rw-r--r--drivers/scsi/scsi_priv.h1
-rw-r--r--include/scsi/scsi_host.h5
4 files changed, 4 insertions, 5 deletions
diff --git a/drivers/scsi/hosts.c b/drivers/scsi/hosts.c
index ba9af4a2bd2a..ec6381e57eb7 100644
--- a/drivers/scsi/hosts.c
+++ b/drivers/scsi/hosts.c
@@ -486,6 +486,8 @@ struct Scsi_Host *scsi_host_alloc(struct scsi_host_template *sht, int privsize)
486 else 486 else
487 shost->dma_boundary = 0xffffffff; 487 shost->dma_boundary = 0xffffffff;
488 488
489 shost->use_blk_mq = scsi_use_blk_mq;
490
489 device_initialize(&shost->shost_gendev); 491 device_initialize(&shost->shost_gendev);
490 dev_set_name(&shost->shost_gendev, "host%d", shost->host_no); 492 dev_set_name(&shost->shost_gendev, "host%d", shost->host_no);
491 shost->shost_gendev.bus = &scsi_bus_type; 493 shost->shost_gendev.bus = &scsi_bus_type;
diff --git a/drivers/scsi/scsi.c b/drivers/scsi/scsi.c
index 1f36aca44394..1deb6adc411f 100644
--- a/drivers/scsi/scsi.c
+++ b/drivers/scsi/scsi.c
@@ -1160,7 +1160,6 @@ bool scsi_use_blk_mq = true;
1160bool scsi_use_blk_mq = false; 1160bool scsi_use_blk_mq = false;
1161#endif 1161#endif
1162module_param_named(use_blk_mq, scsi_use_blk_mq, bool, S_IWUSR | S_IRUGO); 1162module_param_named(use_blk_mq, scsi_use_blk_mq, bool, S_IWUSR | S_IRUGO);
1163EXPORT_SYMBOL_GPL(scsi_use_blk_mq);
1164 1163
1165static int __init init_scsi(void) 1164static int __init init_scsi(void)
1166{ 1165{
diff --git a/drivers/scsi/scsi_priv.h b/drivers/scsi/scsi_priv.h
index 57a4b9973320..85c8a51bc563 100644
--- a/drivers/scsi/scsi_priv.h
+++ b/drivers/scsi/scsi_priv.h
@@ -29,6 +29,7 @@ extern int scsi_init_hosts(void);
29extern void scsi_exit_hosts(void); 29extern void scsi_exit_hosts(void);
30 30
31/* scsi.c */ 31/* scsi.c */
32extern bool scsi_use_blk_mq;
32extern int scsi_setup_command_freelist(struct Scsi_Host *shost); 33extern int scsi_setup_command_freelist(struct Scsi_Host *shost);
33extern void scsi_destroy_command_freelist(struct Scsi_Host *shost); 34extern void scsi_destroy_command_freelist(struct Scsi_Host *shost);
34#ifdef CONFIG_SCSI_LOGGING 35#ifdef CONFIG_SCSI_LOGGING
diff --git a/include/scsi/scsi_host.h b/include/scsi/scsi_host.h
index 0dee7afa93d6..7e4cd53139ed 100644
--- a/include/scsi/scsi_host.h
+++ b/include/scsi/scsi_host.h
@@ -771,12 +771,9 @@ static inline int scsi_host_in_recovery(struct Scsi_Host *shost)
771 shost->tmf_in_progress; 771 shost->tmf_in_progress;
772} 772}
773 773
774extern bool scsi_use_blk_mq;
775
776static inline bool shost_use_blk_mq(struct Scsi_Host *shost) 774static inline bool shost_use_blk_mq(struct Scsi_Host *shost)
777{ 775{
778 return scsi_use_blk_mq; 776 return shost->use_blk_mq;
779
780} 777}
781 778
782extern int scsi_queue_work(struct Scsi_Host *, struct work_struct *); 779extern int scsi_queue_work(struct Scsi_Host *, struct work_struct *);