mpt2sas: delay scsi_add_host call to work with scsi-mq
authorElliott, Robert (Server Storage) <Elliott@hp.com>
Fri, 6 Jun 2014 14:02:42 +0000 (16:02 +0200)
committerJens Axboe <axboe@fb.com>
Fri, 3 Apr 2015 01:34:53 +0000 (19:34 -0600)
commitc6fd59d0d879cfd9cd10b9ef84c42d818cdb6424
treeb07d1db2374a6c22a24b052bace305f8bb016034
parentc4e5fe459f1163e045a8d5e47e90513740d24bae
mpt2sas: delay scsi_add_host call to work with scsi-mq

In _scsih_probe, delay the call to scsi_add_host until the host has been
fully set up.

Otherwise, the default .can_queue value of 1 causes scsi-mq to set the block
layer request queue size to its minimum size, resulting in awful performance.

In _scsih_probe error handling, call mpt3sas_base_detach rather than
scsi_remove_host to properly clean up in reverse order.

In _scsih_remove, call scsi_remove_host earlier to clean up in reverse order.

Signed-off-by: Robert Elliott <elliott@hp.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/scsi/mpt2sas/mpt2sas_scsih.c