* [GIT PULL] first round of SCSI updates for the 4.11+ merge window
@ 2017-05-03 22:10 James Bottomley
0 siblings, 0 replies; only message in thread
From: James Bottomley @ 2017-05-03 22:10 UTC (permalink / raw)
To: Andrew Morton, Linus Torvalds; +Cc: linux-scsi, linux-kernel
This update includes the usual round of major driver updates (hisi_sas,
ufs, fnic, cxlflash, be2iscsi, ipr, stex). There's also the usual
amount of cosmetic and spelling stuff.
The major thing you should be aware of is that there's a clash between
a char dev change in the char-misc tree (adding the new cdev_device_add
helper) and the make checking the return value of scsi_device_get()
mandatory (in osd_uld.c). I was waiting for you to pull Greg's tree,
but since you haven't, here's mine. Just in case we cross, the
proposed resolution is below (from merging char-misc followed by
scsi/misc).
The patch is available here:
git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi.git scsi-misc
The short changelog is:
Alexey Khoroshilov (1):
scsi: mvumi: remove code handling zero scsi_sg_count(scmd) case
Arnd Bergmann (6):
scsi: pmcraid: use normal copy_from_user
scsi: pmcraid: fix minor sparse warnings
scsi: pmcraid: fix endianess sparse annotations
scsi: pmcraid: use __iomem pointers for ioctl argument
scsi: advansys: fix uninitialized data access
scsi: hisi_sas: fix SATA dependency
Bart Van Assche (3):
scsi: sd_zbc: Remove superfluous assignments
scsi: Make checking the scsi_device_get() return value mandatory
scsi: osd_uld: Check scsi_device_get() return value
Brian King (6):
scsi: ipr: Driver version 2.6.4
scsi: ipr: Fix SATA EH hang
scsi: ipr: Error path locking fixes
scsi: ipr: Fix abort path race condition
scsi: ipr: Remove redundant initialization
scsi: ipr: Fix missed EH wakeup
Cathy Avery (2):
scsi: storvsc: Add support for FC rport.
scsi: scsi_transport_fc: Add dummy initiator role to rport
Charles (2):
scsi: stex: Add S6 support
scsi: stex: Support Pegasus 3 product
Christoph Hellwig (7):
scsi: sd: Cleanup sd_done sense data handling
scsi: pmcraid: fix lock imbalance in pmcraid_reset_reload()
scsi: bfa: remove bfa_module_s madness
scsi: libsas: allow async aborts
scsi: csiostor: switch to pci_alloc_irq_vectors
scsi: be2iscsi: switch to pci_alloc_irq_vectors
scsi: fnic: switch to pci_alloc_irq_vectors
Colin Ian King (11):
scsi: qla4xxx: fix spelling mistake: "Tempalate" -> "Template"
scsi: stex: make S6flag static
scsi: fcoe: make fcoe_e_d_tov and fcoe_r_a_tov static
scsi: fusion: fix spelling mistake: "Persistancy" -> "Persistency"
scsi: BusLogic: fix incorrect spelling of adatper_reset_req
scsi: aic7xxx: fix order of arguments in function prototype
scsi: fc: remove redundant check of an unsigned long being less than zero
scsi: snic: fix spelling mistake: "Cann't" -> "Cannot"
scsi: qla2xxx: remove some redundant pointer assignments
scsi: hisi_sas: add missing break in switch statement
scsi: esas2r: Remove redundant NULL check on buffer
Damien Le Moal (5):
scsi: sd_zbc: Do not write lock zones for reset
scsi: sd: sd_zbc: Rename sd_zbc_setup_write_cmnd
scsi: Improve scsi_get_sense_info_fld
scsi: sd: Improve sd_completed_bytes
scsi: sd: Fix function descriptions
Dan Carpenter (1):
scsi: osd_uld: remove an unneeded NULL check
David Gibson (1):
scsi: virtio_scsi: Always try to read VPD pages
Dmitry Torokhov (1):
scsi: remove incorrect __exit markups
Don Brace (2):
scsi: hpsa: change driver version
scsi: hpsa: update pci ids
Elena Reshetova (2):
scsi: libiscsi: qedi: convert iscsi_task.refcount from atomic_t to refcount_t
scsi: libfc: convert fc_fcp_pkt.ref_cnt from atomic_t to refcount_t
Finn Thain (1):
scsi: mac_esp: Replace bogus memory barrier with spinlock
Hannes Reinecke (13):
scsi: mpt: Move scsi_remove_host() out of mptscsih_remove_host()
scsi: sg: reset 'res_in_use' after unlinking reserved array
scsi: sg: close race condition in sg_remove_sfp_usercontext()
scsi: sg: use standard lists for sg_requests
scsi: sg: protect accesses to 'reserved' page array
scsi: sg: remove 'save_scat_len'
scsi: sg: disable SET_FORCE_LOW_DMA
scsi: make asynchronous aborts mandatory
scsi: make scsi_eh_scmd_add() always succeed
scsi: make eh_eflags persistent
scsi: always send command aborts
scsi: sd: Return SUCCESS in sd_eh_action() after device offline
scsi: scsi_error: count medium access timeout only once per EH run
Jack Wang (1):
MAINTAINERS: remove pmchba list for PM8001
Jitendra Bhivare (10):
scsi: be2iscsi: Update driver version
scsi: be2iscsi: Update Copyright
scsi: be2iscsi: Check size before copying ASYNC handle
scsi: be2iscsi: Remove free_list for ASYNC handles
scsi: be2iscsi: Use num_cons field in Rx CQE
scsi: be2iscsi: Increase HDQ default queue size
scsi: scsi_transport_iscsi: Use flush_work in iscsi_remove_session
scsi: be2iscsi: Replace spin_unlock_bh with spin_lock
scsi: be2iscsi: Fix closing of connection
scsi: be2iscsi: Check tag in beiscsi_mccq_compl_wait
Johannes Thumshirn (4):
scsi: sas: move scsi_remove_host call into sas_remove_host
scsi: libfc: directly call ELS request handlers
scsi: sg: check for valid direction before starting the request
scsi: sas: remove sas_domain_release_transport
John Garry (16):
scsi: hisi_sas: fix NULL deference when TMF timeouts
scsi: hisi_sas: add v2 hw internal abort timeout workaround
scsi: hisi_sas: check hisi_sas_lu_reset() error message
scsi: hisi_sas: add hisi_sas_clear_nexus_ha()
scsi: hisi_sas: rename hisi_sas_link_timeout_{enable, disable}_link
scsi: hisi_sas: some modifications to v2 hw reg init values
scsi: hisi_sas: remove task free'ing for timeouts
scsi: hisi_sas: fix some sas_task.task_state_lock locking
scsi: hisi_sas: check for SAS_TASK_STATE_ABORTED in slot complete
scsi: hisi_sas: hardreset for SATA disk in LU reset
scsi: hisi_sas: modify hisi_sas_abort_task() for SSP
scsi: hisi_sas: only reset link for PHY_FUNC_LINK_RESET
scsi: hisi_sas: error hisi_sas_task_prep() when port down
scsi: hisi_sas: remove hisi_sas_port_deformed()
scsi: hisi_sas: move PHY init to hisi_sas_scan_start()
scsi: hisi_sas: add to_hisi_sas_port()
Kees Cook (2):
scsi: bfa: use designated initializers
scsi: qedi: qedf: Use designated initializers
Mahesh Rajashekhara (1):
scsi: aacraid: pci_alloc_consistent() failures on ARM64
Matthew R. Ochs (16):
scsi: cxlflash: Introduce hardware queue steering
scsi: cxlflash: Add hardware queues attribute
scsi: cxlflash: Improve asynchronous interrupt processing
scsi: cxlflash: Fix warnings/errors
scsi: cxlflash: Fix power-of-two validations
scsi: cxlflash: Remove unnecessary DMA mapping
scsi: cxlflash: Fence EEH during probe
scsi: cxlflash: Support up to 4 ports
scsi: cxlflash: SISlite updates to support 4 ports
scsi: cxlflash: Hide FC internals behind common access routine
scsi: cxlflash: Remove port configuration assumptions
scsi: cxlflash: Support dynamic number of FC ports
scsi: cxlflash: Update sysfs helper routines to pass config structure
scsi: cxlflash: Implement IRQ polling for RRQ processing
scsi: cxlflash: Serialize RRQ access and support offlevel processing
scsi: cxlflash: Separate RRQ processing from the RRQ interrupt handler
Mauricio Faria de Oliveira (1):
scsi: ses: don't get power status of SES device slot on probe
Maurizio Lombardi (1):
scsi: lpfc: fix potential buffer overflow.
Miguel Bernal Marin (2):
scsi: storvsc: remove return at end of void function
scsi: storvsc: Prefer kcalloc over kzalloc with multiply
Milan P Gandhi (1):
scsi: qla2xxx: Fix typo in driver
NeilBrown (1):
scsi: ibmvfc: don't check for failure from mempool_alloc()
Nicholas Mc Guire (1):
scsi: qla4xxx: drop redundant init_completion
Satish Kharat (7):
scsi: fnic: bug fix for fip.fip_subcode in fnic_fcoe_send_vlan_req
scsi: fnic: Adding debug IO and Abort latency counter to fnic stats
scsi: fnic: Adding Check Condition counter to misc fnicstats
scsi: fnic: Avoid false out-of-order detection for aborted command
scsi: fnic: Fix for "Number of Active IOs" in fnicstats becoming negative
scsi: fnic: minor cleanup in fnic_fcpio_itmf_cmpl_handler, removing else case
scsi: fnic: Ratelimit printks to avoid flooding when vlan is not set by the switch.i
Sinan Kaya (1):
scsi: mpt3sas: remove redundant wmb
Szymon Mielczarek (1):
Revert "scsi: ufs: add queries retry mechanism"
Tomohiro Kusumi (9):
scsi: ufs: make ufshcd_get_lists_status() register operation obvious
scsi: ufs: use MASK_EE_STATUS
scsi: ufs: just use sizeof() for snprintf()
scsi: ufs: remove deprecated enum for hw interrupt
scsi: ufs: add missing macros for register bits from UFSHCI spec
scsi: ufs: non functional macro fix
scsi: ufs: use existing macro CONTROLLER_ENABLE to test register bit
scsi: ufs: make ufshcd_is_{device_present, hba_active}() return bool
scsi: ufs: fix wrong/ambiguous fall through comments
Uma Krishnan (1):
scsi: cxlflash: Support multiple hardware queues
Varun Prakash (1):
scsi: cxgb4i: update module description
Wei Yongjun (1):
scsi: mac_esp: fix to pass correct device identity to free_irq()
Xiang Chen (8):
scsi: hisi_sas: controller reset for multi-bits ECC and AXI fatal errors
scsi: hisi_sas: use dev_is_sata to identify SATA or SAS disk
scsi: hisi_sas: release SMP slot in lldd_abort_task
scsi: hisi_sas: process error codes according to their priority
scsi: hisi_sas: free slots after hardreset
scsi: hisi_sas: modify error handling for v2 hw
scsi: hisi_sas: add softreset function for SATA disk
scsi: hisi_sas: add controller reset
Xiaofei Tan (5):
scsi: hisi_sas: workaround SoC about abort timeout bug
scsi: hisi_sas: workaround a SoC SATA IO processing bug
scsi: hisi_sas: workaround STP link SoC bug
scsi: hisi_sas: add is_sata_phy_v2_hw()
scsi: hisi_sas: handle PHY UP+DOWN simultaneous irq
With diffstat:
Documentation/powerpc/cxlflash.txt | 5 +
Documentation/scsi/scsi_eh.txt | 30 +-
MAINTAINERS | 1 -
drivers/message/fusion/mptbase.c | 2 +-
drivers/message/fusion/mptfc.c | 7 +-
drivers/message/fusion/mptscsih.c | 2 -
drivers/message/fusion/mptspi.c | 10 +-
drivers/misc/enclosure.c | 7 +-
drivers/scsi/BusLogic.c | 14 +-
drivers/scsi/BusLogic.h | 2 +-
drivers/scsi/aacraid/aachba.c | 13 +-
drivers/scsi/aacraid/commctrl.c | 6 +-
drivers/scsi/aacraid/comminit.c | 3 +-
drivers/scsi/aacraid/commsup.c | 20 +-
drivers/scsi/aacraid/linit.c | 8 +-
drivers/scsi/aacraid/rx.c | 16 +-
drivers/scsi/advansys.c | 21 +-
drivers/scsi/aic7xxx/aic7xxx_pci.c | 4 +-
drivers/scsi/aic94xx/aic94xx_init.c | 1 -
drivers/scsi/be2iscsi/be.h | 12 +-
drivers/scsi/be2iscsi/be_cmds.c | 17 +-
drivers/scsi/be2iscsi/be_cmds.h | 74 +-
drivers/scsi/be2iscsi/be_iscsi.c | 111 +--
drivers/scsi/be2iscsi/be_iscsi.h | 13 +-
drivers/scsi/be2iscsi/be_main.c | 397 +++++------
drivers/scsi/be2iscsi/be_main.h | 30 +-
drivers/scsi/be2iscsi/be_mgmt.c | 140 ++--
drivers/scsi/be2iscsi/be_mgmt.h | 43 +-
drivers/scsi/bfa/bfa_core.c | 66 +-
drivers/scsi/bfa/bfa_fcpim.c | 37 +-
drivers/scsi/bfa/bfa_fcs_lport.c | 31 +-
drivers/scsi/bfa/bfa_ioc.c | 30 +-
drivers/scsi/bfa/bfa_modules.h | 101 ++-
drivers/scsi/bfa/bfa_svc.c | 172 +----
drivers/scsi/csiostor/csio_hw.h | 1 -
drivers/scsi/csiostor/csio_isr.c | 128 ++--
drivers/scsi/cxgbi/cxgb4i/cxgb4i.c | 2 +-
drivers/scsi/cxlflash/common.h | 137 +++-
drivers/scsi/cxlflash/lunmgt.c | 4 +-
drivers/scsi/cxlflash/main.c | 1162 ++++++++++++++++++++++--------
drivers/scsi/cxlflash/main.h | 2 -
drivers/scsi/cxlflash/sislite.h | 124 ++--
drivers/scsi/cxlflash/superpipe.c | 16 +-
drivers/scsi/cxlflash/superpipe.h | 56 +-
drivers/scsi/cxlflash/vlun.c | 99 ++-
drivers/scsi/cxlflash/vlun.h | 2 +-
drivers/scsi/esas2r/esas2r_log.c | 5 -
drivers/scsi/fcoe/fcoe.c | 4 +-
drivers/scsi/fnic/fnic.h | 3 +-
drivers/scsi/fnic/fnic_fcs.c | 23 +-
drivers/scsi/fnic/fnic_isr.c | 41 +-
drivers/scsi/fnic/fnic_scsi.c | 105 ++-
drivers/scsi/fnic/fnic_stats.h | 16 +
drivers/scsi/fnic/fnic_trace.c | 49 +-
drivers/scsi/hisi_sas/Kconfig | 1 +
drivers/scsi/hisi_sas/hisi_sas.h | 19 +-
drivers/scsi/hisi_sas/hisi_sas_main.c | 471 +++++++++----
drivers/scsi/hisi_sas/hisi_sas_v1_hw.c | 19 +-
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c | 1201 +++++++++++++++++++++++++-------
drivers/scsi/hpsa.c | 6 +-
drivers/scsi/ibmvscsi/ibmvfc.c | 6 -
drivers/scsi/ipr.c | 259 +++++--
drivers/scsi/ipr.h | 4 +-
drivers/scsi/isci/init.c | 1 -
drivers/scsi/libfc/fc_fcp.c | 6 +-
drivers/scsi/libfc/fc_lport.c | 20 +-
drivers/scsi/libiscsi.c | 8 +-
drivers/scsi/libsas/sas_init.c | 7 -
drivers/scsi/libsas/sas_scsi_host.c | 5 -
drivers/scsi/lpfc/lpfc_attr.c | 4 +-
drivers/scsi/mac_esp.c | 35 +-
drivers/scsi/mpt3sas/mpt3sas_base.c | 2 -
drivers/scsi/mpt3sas/mpt3sas_scsih.c | 1 -
drivers/scsi/mvsas/mv_init.c | 1 -
drivers/scsi/mvumi.c | 85 +--
drivers/scsi/osd/osd_uld.c | 15 +-
drivers/scsi/pm8001/pm8001_init.c | 1 -
drivers/scsi/pmcraid.c | 234 +++----
drivers/scsi/pmcraid.h | 8 +-
drivers/scsi/qedf/qedf_debugfs.c | 2 +-
drivers/scsi/qedi/qedi_debugfs.c | 2 +-
drivers/scsi/qedi/qedi_iscsi.c | 2 +-
drivers/scsi/qla2xxx/qla_attr.c | 2 +-
drivers/scsi/qla2xxx/qla_bsg.c | 2 +-
drivers/scsi/qla2xxx/qla_gs.c | 2 +-
drivers/scsi/qla2xxx/qla_init.c | 2 +-
drivers/scsi/qla2xxx/qla_isr.c | 6 +-
drivers/scsi/qla2xxx/qla_os.c | 6 -
drivers/scsi/qla4xxx/ql4_init.c | 2 +-
drivers/scsi/qla4xxx/ql4_os.c | 1 -
drivers/scsi/scsi_error.c | 184 ++---
drivers/scsi/scsi_lib.c | 4 +-
drivers/scsi/scsi_priv.h | 3 +-
drivers/scsi/scsi_transport_fc.c | 12 +-
drivers/scsi/scsi_transport_iscsi.c | 3 +-
drivers/scsi/scsi_transport_sas.c | 8 +-
drivers/scsi/sd.c | 134 ++--
drivers/scsi/sd.h | 14 +-
drivers/scsi/sd_zbc.c | 58 +-
drivers/scsi/ses.c | 1 -
drivers/scsi/sg.c | 284 ++++----
drivers/scsi/sgiwd93.c | 2 +-
drivers/scsi/sni_53c710.c | 2 +-
drivers/scsi/snic/snic_debugfs.c | 2 +-
drivers/scsi/stex.c | 287 ++++++--
drivers/scsi/storvsc_drv.c | 27 +-
drivers/scsi/ufs/ufshcd.c | 102 +--
drivers/scsi/ufs/ufshci.h | 6 +
drivers/scsi/virtio_scsi.c | 24 +
drivers/scsi/zalon.c | 2 +-
include/scsi/libfc.h | 3 +-
include/scsi/libiscsi.h | 3 +-
include/scsi/libsas.h | 1 -
include/scsi/scsi_device.h | 2 +-
include/scsi/scsi_driver.h | 1 +
include/scsi/scsi_eh.h | 5 +-
include/scsi/scsi_host.h | 5 -
include/scsi/scsi_transport_fc.h | 1 +
include/scsi/sg.h | 1 -
119 files changed, 4302 insertions(+), 2752 deletions(-)
James
---
diff --cc drivers/scsi/osd/osd_uld.c
index 4101c3178411,ed948025112c..0e56f1eb05dc
--- a/drivers/scsi/osd/osd_uld.c
+++ b/drivers/scsi/osd/osd_uld.c
@@@ -442,20 -446,8 +442,21 @@@ static int osd_probe(struct device *dev
if (NULL == oud)
goto err_retract_minor;
+ /* class device member */
+ device_initialize(&oud->class_dev);
dev_set_drvdata(dev, oud);
oud->minor = minor;
+ oud->class_dev.devt = MKDEV(SCSI_OSD_MAJOR, oud->minor);
+ oud->class_dev.class = &osd_uld_class;
+ oud->class_dev.parent = dev;
+ oud->class_dev.release = __remove;
+
+ /* hold one more reference to the scsi_device that will get released
+ * in __release, in case a logout is happening while fs is mounted
+ */
- scsi_device_get(scsi_device);
++ if (scsi_device_get(scsi_device))
++ goto err_retract_minor;
+ osd_dev_init(&oud->od, scsi_device);
/* allocate a disk and set it up */
/* FIXME: do we need this since sg has already done that */
@@@ -507,16 -526,14 +508,15 @@@ static int osd_remove(struct device *de
struct scsi_device *scsi_device = to_scsi_device(dev);
struct osd_uld_device *oud = dev_get_drvdata(dev);
- if (!oud || (oud->od.scsi_device != scsi_device)) {
- OSD_ERR("Half cooked osd-device %p,%p || %p!=%p",
- dev, oud, oud ? oud->od.scsi_device : NULL,
- scsi_device);
+ if (oud->od.scsi_device != scsi_device) {
+ OSD_ERR("Half cooked osd-device %p, || %p!=%p",
+ dev, oud->od.scsi_device, scsi_device);
}
- device_unregister(&oud->class_dev);
-
+ cdev_device_del(&oud->cdev, &oud->class_dev);
+ ida_remove(&osd_minor_ida, oud->minor);
put_device(&oud->class_dev);
+
return 0;
}
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2017-05-03 22:10 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-05-03 22:10 [GIT PULL] first round of SCSI updates for the 4.11+ merge window James Bottomley
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.