Merge remote-tracking branches 'spi/fix/dspi' and 'spi/fix/spidev' into spi-linus
[firefly-linux-kernel-4.4.55.git] / drivers / scsi / mvsas / mv_init.c
index e2d555c1bffc16f94a87ed6b009d868cc3784a3e..675e7fab0796e4c1ebfc3e7e77aa109592a25c02 100644 (file)
@@ -65,7 +65,6 @@ static struct scsi_host_template mvs_sht = {
        .target_destroy         = sas_target_destroy,
        .ioctl                  = sas_ioctl,
        .shost_attrs            = mvst_host_attrs,
-       .use_blk_tags           = 1,
        .track_queue_depth      = 1,
 };
 
@@ -641,9 +640,9 @@ static void mvs_pci_remove(struct pci_dev *pdev)
        tasklet_kill(&((struct mvs_prv_info *)sha->lldd_ha)->mv_tasklet);
 #endif
 
+       scsi_remove_host(mvi->shost);
        sas_unregister_ha(sha);
        sas_remove_host(mvi->shost);
-       scsi_remove_host(mvi->shost);
 
        MVS_CHIP_DISP->interrupt_disable(mvi);
        free_irq(mvi->pdev->irq, sha);
@@ -759,7 +758,7 @@ mvs_store_interrupt_coalescing(struct device *cdev,
                        struct device_attribute *attr,
                        const char *buffer, size_t size)
 {
-       int val = 0;
+       unsigned int val = 0;
        struct mvs_info *mvi = NULL;
        struct Scsi_Host *shost = class_to_shost(cdev);
        struct sas_ha_struct *sha = SHOST_TO_SAS_HA(shost);
@@ -767,7 +766,7 @@ mvs_store_interrupt_coalescing(struct device *cdev,
        if (buffer == NULL)
                return size;
 
-       if (sscanf(buffer, "%d", &val) != 1)
+       if (sscanf(buffer, "%u", &val) != 1)
                return -EINVAL;
 
        if (val >= 0x10000) {