Merge tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi
authorLinus Torvalds <torvalds@linux-foundation.org>
Wed, 15 Nov 2017 00:23:44 +0000 (16:23 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 15 Nov 2017 00:23:44 +0000 (16:23 -0800)
Pull SCSI updates from James Bottomley:
 "This is mostly updates of the usual suspects: lpfc, qla2xxx, hisi_sas,
  megaraid_sas, pm80xx, mpt3sas, be2iscsi, hpsa. and a host of minor
  updates.

  There's no major behaviour change or additions to the core in all of
  this, so the potential for regressions should be small (biggest
  potential being in the scsi error handler changes)"

* tag 'scsi-misc' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (203 commits)
  scsi: lpfc: Fix hard lock up NMI in els timeout handling.
  scsi: mpt3sas: remove a stray KERN_INFO
  scsi: mpt3sas: cleanup _scsih_pcie_enumeration_event()
  scsi: aacraid: use timespec64 instead of timeval
  scsi: scsi_transport_fc: add 64GBIT and 128GBIT port speed definitions
  scsi: qla2xxx: Suppress a kernel complaint in qla_init_base_qpair()
  scsi: mpt3sas: fix dma_addr_t casts
  scsi: be2iscsi: Use kasprintf
  scsi: storvsc: Avoid excessive host scan on controller change
  scsi: lpfc: fix kzalloc-simple.cocci warnings
  scsi: mpt3sas: Update mpt3sas driver version.
  scsi: mpt3sas: Fix sparse warnings
  scsi: mpt3sas: Fix nvme drives checking for tlr.
  scsi: mpt3sas: NVMe drive support for BTDHMAPPING ioctl command and log info
  scsi: mpt3sas: Add-Task-management-debug-info-for-NVMe-drives.
  scsi: mpt3sas: scan and add nvme device after controller reset
  scsi: mpt3sas: Set NVMe device queue depth as 128
  scsi: mpt3sas: Handle NVMe PCIe device related events generated from firmware.
  scsi: mpt3sas: API's to remove nvme drive from sml
  scsi: mpt3sas: API 's to support NVMe drive addition to SML
  ...

51 files changed:
1  2 
drivers/scsi/Makefile
drivers/scsi/NCR5380.c
drivers/scsi/aic94xx/aic94xx_hwi.c
drivers/scsi/be2iscsi/be_main.c
drivers/scsi/bnx2i/bnx2i_hwi.c
drivers/scsi/csiostor/csio_mb.c
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c
drivers/scsi/cxgbi/libcxgbi.c
drivers/scsi/fcoe/fcoe.c
drivers/scsi/hisi_sas/hisi_sas.h
drivers/scsi/hisi_sas/hisi_sas_main.c
drivers/scsi/hisi_sas/hisi_sas_v1_hw.c
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
drivers/scsi/hpsa.c
drivers/scsi/libsas/sas_init.c
drivers/scsi/lpfc/lpfc_attr.c
drivers/scsi/lpfc/lpfc_els.c
drivers/scsi/lpfc/lpfc_hbadisc.c
drivers/scsi/lpfc/lpfc_init.c
drivers/scsi/lpfc/lpfc_nvme.c
drivers/scsi/lpfc/lpfc_sli.c
drivers/scsi/megaraid/megaraid_sas_base.c
drivers/scsi/megaraid/megaraid_sas_fusion.c
drivers/scsi/mpt3sas/mpi/mpi2.h
drivers/scsi/mpt3sas/mpi/mpi2_cnfg.h
drivers/scsi/mpt3sas/mpi/mpi2_init.h
drivers/scsi/mpt3sas/mpi/mpi2_ioc.h
drivers/scsi/mpt3sas/mpi/mpi2_tool.h
drivers/scsi/pm8001/pm8001_sas.c
drivers/scsi/qla2xxx/qla_gbl.h
drivers/scsi/qla2xxx/qla_init.c
drivers/scsi/qla2xxx/qla_mid.c
drivers/scsi/qla2xxx/qla_os.c
drivers/scsi/qla2xxx/qla_target.c
drivers/scsi/scsi_devinfo.c
drivers/scsi/scsi_error.c
drivers/scsi/scsi_lib.c
drivers/scsi/scsi_logging.h
drivers/scsi/scsi_priv.h
drivers/scsi/scsi_scan.c
drivers/scsi/scsi_sysfs.c
drivers/scsi/scsi_transport_fc.c
drivers/scsi/scsi_transport_iscsi.c
drivers/scsi/sd.c
drivers/scsi/smartpqi/smartpqi_init.c
drivers/scsi/ufs/ufs-qcom.c
include/scsi/libsas.h
include/scsi/scsi_device.h
include/scsi/scsi_devinfo.h
include/scsi/scsi_proto.h

Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -579,9 -585,9 +585,10 @@@ int scsi_check_sense(struct scsi_cmnd *
        case ILLEGAL_REQUEST:
                if (sshdr.asc == 0x20 || /* Invalid command operation code */
                    sshdr.asc == 0x21 || /* Logical block address out of range */
+                   sshdr.asc == 0x22 || /* Invalid function */
                    sshdr.asc == 0x24 || /* Invalid field in cdb */
 -                  sshdr.asc == 0x26) { /* Parameter value invalid */
 +                  sshdr.asc == 0x26 || /* Parameter value invalid */
 +                  sshdr.asc == 0x27) { /* Write protected */
                        set_host_byte(scmd, DID_TARGET_FAILURE);
                }
                return SUCCESS;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -4,32 -3,55 +4,57 @@@
  /*
   * Flags for SCSI devices that need special treatment
   */
- #define BLIST_NOLUN           0x001   /* Only scan LUN 0 */
- #define BLIST_FORCELUN        0x002   /* Known to have LUNs, force scanning,
-                                          deprecated: Use max_luns=N */
- #define BLIST_BORKEN          0x004   /* Flag for broken handshaking */
- #define BLIST_KEY             0x008   /* unlock by special command */
- #define BLIST_SINGLELUN       0x010   /* Do not use LUNs in parallel */
- #define BLIST_NOTQ            0x020   /* Buggy Tagged Command Queuing */
- #define BLIST_SPARSELUN       0x040   /* Non consecutive LUN numbering */
- #define BLIST_MAX5LUN         0x080   /* Avoid LUNS >= 5 */
- #define BLIST_ISROM           0x100   /* Treat as (removable) CD-ROM */
- #define BLIST_LARGELUN                0x200   /* LUNs past 7 on a SCSI-2 device */
- #define BLIST_INQUIRY_36      0x400   /* override additional length field */
- #define BLIST_NOSTARTONADD    0x1000  /* do not do automatic start on add */
- #define BLIST_REPORTLUN2      0x20000 /* try REPORT_LUNS even for SCSI-2 devs
-                                          (if HBA supports more than 8 LUNs) */
- #define BLIST_NOREPORTLUN     0x40000 /* don't try REPORT_LUNS scan (SCSI-3 devs) */
- #define BLIST_NOT_LOCKABLE    0x80000 /* don't use PREVENT-ALLOW commands */
- #define BLIST_NO_ULD_ATTACH   0x100000 /* device is actually for RAID config */
- #define BLIST_SELECT_NO_ATN   0x200000 /* select without ATN */
- #define BLIST_RETRY_HWERROR   0x400000 /* retry HARDWARE_ERROR */
- #define BLIST_MAX_512         0x800000 /* maximum 512 sector cdb length */
- #define BLIST_NO_DIF          0x2000000 /* Disable T10 PI (DIF) */
- #define BLIST_SKIP_VPD_PAGES  0x4000000 /* Ignore SBC-3 VPD pages */
- #define BLIST_TRY_VPD_PAGES   0x10000000 /* Attempt to read VPD pages */
- #define BLIST_NO_RSOC         0x20000000 /* don't try to issue RSOC */
- #define BLIST_MAX_1024                0x40000000 /* maximum 1024 sector cdb length */
- #define BLIST_UNMAP_LIMIT_WS  0x80000000 /* Use UNMAP limit for WRITE SAME */
+ /* Only scan LUN 0 */
+ #define BLIST_NOLUN           ((__force __u32 __bitwise)(1 << 0))
+ /* Known to have LUNs, force scanning.
+  * DEPRECATED: Use max_luns=N */
+ #define BLIST_FORCELUN                ((__force __u32 __bitwise)(1 << 1))
+ /* Flag for broken handshaking */
+ #define BLIST_BORKEN          ((__force __u32 __bitwise)(1 << 2))
+ /* unlock by special command */
+ #define BLIST_KEY             ((__force __u32 __bitwise)(1 << 3))
+ /* Do not use LUNs in parallel */
+ #define BLIST_SINGLELUN               ((__force __u32 __bitwise)(1 << 4))
+ /* Buggy Tagged Command Queuing */
+ #define BLIST_NOTQ            ((__force __u32 __bitwise)(1 << 5))
+ /* Non consecutive LUN numbering */
+ #define BLIST_SPARSELUN               ((__force __u32 __bitwise)(1 << 6))
+ /* Avoid LUNS >= 5 */
+ #define BLIST_MAX5LUN         ((__force __u32 __bitwise)(1 << 7))
+ /* Treat as (removable) CD-ROM */
+ #define BLIST_ISROM           ((__force __u32 __bitwise)(1 << 8))
+ /* LUNs past 7 on a SCSI-2 device */
+ #define BLIST_LARGELUN                ((__force __u32 __bitwise)(1 << 9))
+ /* override additional length field */
+ #define BLIST_INQUIRY_36      ((__force __u32 __bitwise)(1 << 10))
+ /* do not do automatic start on add */
+ #define BLIST_NOSTARTONADD    ((__force __u32 __bitwise)(1 << 12))
+ /* try REPORT_LUNS even for SCSI-2 devs (if HBA supports more than 8 LUNs) */
+ #define BLIST_REPORTLUN2      ((__force __u32 __bitwise)(1 << 17))
+ /* don't try REPORT_LUNS scan (SCSI-3 devs) */
+ #define BLIST_NOREPORTLUN     ((__force __u32 __bitwise)(1 << 18))
+ /* don't use PREVENT-ALLOW commands */
+ #define BLIST_NOT_LOCKABLE    ((__force __u32 __bitwise)(1 << 19))
+ /* device is actually for RAID config */
+ #define BLIST_NO_ULD_ATTACH   ((__force __u32 __bitwise)(1 << 20))
+ /* select without ATN */
+ #define BLIST_SELECT_NO_ATN   ((__force __u32 __bitwise)(1 << 21))
+ /* retry HARDWARE_ERROR */
+ #define BLIST_RETRY_HWERROR   ((__force __u32 __bitwise)(1 << 22))
+ /* maximum 512 sector cdb length */
+ #define BLIST_MAX_512         ((__force __u32 __bitwise)(1 << 23))
+ /* Disable T10 PI (DIF) */
+ #define BLIST_NO_DIF          ((__force __u32 __bitwise)(1 << 25))
+ /* Ignore SBC-3 VPD pages */
+ #define BLIST_SKIP_VPD_PAGES  ((__force __u32 __bitwise)(1 << 26))
+ /* Attempt to read VPD pages */
+ #define BLIST_TRY_VPD_PAGES   ((__force __u32 __bitwise)(1 << 28))
+ /* don't try to issue RSOC */
+ #define BLIST_NO_RSOC         ((__force __u32 __bitwise)(1 << 29))
+ /* maximum 1024 sector cdb length */
+ #define BLIST_MAX_1024                ((__force __u32 __bitwise)(1 << 30))
++/* Use UNMAP limit for WRITE SAME */
++#define BLIST_UNMAP_LIMIT_WS  ((__force __u32 __bitwise)(1 << 31))
  
  #endif
Simple merge