tree fbdc80d7bd7cf3c40f85048b6f5e9c1357ca50d6
parent ac4e01093f6d7b051c5d6a3e61ea5337774ac36a
parent 297b8a07347555f0d2fafa4a1ddfc332d2d4afa9
author Linus Torvalds <torvalds@linux-foundation.org> 1368311062 -0700
committer Linus Torvalds <torvalds@linux-foundation.org> 1368311062 -0700
mergetag object 297b8a07347555f0d2fafa4a1ddfc332d2d4afa9
 type commit
 tag scsi-for-linus
 tagger James Bottomley <JBottomley@Parallels.com> 1368197930 -0700
 
 SCSI for-linus on 20130510
 
 This is the final round of SCSI patches for the merge window.  It consists
 mostly of driver updates (bnx2fc, ibmfc, fnic, lpfc, be2iscsi, pm80xx, qla4x
 and ipr).  There's also the power management updates that complete the patches
 in Jens' tree, an iscsi refcounting problem fix from the last pull, some dif
 handling in scsi_debug fixes, a few nice code cleanups and an error handling
 busy bug fix.
 
 Signed-off-by: James Bottomley <JBottomley@Parallels.com>
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2.0.19 (GNU/Linux)
 
 iQEcBAABAgAGBQJRjQsqAAoJEDeqqVYsXL0MayMH/iDncN0swy/Y2Pfh31YHRcvG
 pPTsx/WgQogg5WDeG1XRPmgDJBmJKeSO7OcIZ/AWz+8BJkZbDLfdSp9ugg8ZrrsN
 yAa3lZoOfxhf43AEaUpgORHGj39O+QfoLq3mdo44A57ro30YotIaMvCiqv+baPSL
 Z8K7O/TmmHmOeir3Gl05qrO6PKvQkNnHYZoF1lBiHypUJk51cuTmHrfY6mb2ktXc
 7aElSXSbpUcqQQ8QHnXO/3r6VPkYjhznvo8q8rcLvqQqRnTdLF5Su8vDuyMbbJcU
 svu30wRaBik3XvIfppGhukrYeU5ooj13zZAUY9NIf2vc2wjpMUlRNNZ0uSsHzOw=
 =6cOg
 -----END PGP SIGNATURE-----

Merge tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi

Pull second SCSI update from James "Jaj B" Bottomley:
 "This is the final round of SCSI patches for the merge window.  It
  consists mostly of driver updates (bnx2fc, ibmfc, fnic, lpfc,
  be2iscsi, pm80xx, qla4x and ipr).

  There's also the power management updates that complete the patches in
  Jens' tree, an iscsi refcounting problem fix from the last pull, some
  dif handling in scsi_debug fixes, a few nice code cleanups and an
  error handling busy bug fix."

* tag 'scsi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi: (92 commits)
  [SCSI] qla2xxx: Update firmware link in Kconfig file.
  [SCSI] iscsi class, qla4xxx: fix sess/conn refcounting when find fns are used
  [SCSI] sas: unify the pointlessly separated enums sas_dev_type and sas_device_type
  [SCSI] pm80xx: thermal, sas controller config and error handling update
  [SCSI] pm80xx: NCQ error handling changes
  [SCSI] pm80xx: WWN Modification for PM8081/88/89 controllers
  [SCSI] pm80xx: Changed module name and debug messages update
  [SCSI] pm80xx: Firmware flash memory free fix, with addition of new memory region for it
  [SCSI] pm80xx: SPC new firmware changes for device id 0x8081 alone
  [SCSI] pm80xx: Added SPCv/ve specific hardware functionalities and relevant changes in common files
  [SCSI] pm80xx: MSI-X implementation for using 64 interrupts
  [SCSI] pm80xx: Updated common functions common for SPC and SPCv/ve
  [SCSI] pm80xx: Multiple inbound/outbound queue configuration
  [SCSI] pm80xx: Added SPCv/ve specific ids, variables and modify for SPC
  [SCSI] lpfc: fix up Kconfig dependencies
  [SCSI] Handle MLQUEUE busy response in scsi_send_eh_cmnd
  [SCSI] sd: change to auto suspend mode
  [SCSI] sd: use REQ_PM in sd's runtime suspend operation
  [SCSI] qla4xxx: Fix iocb_cnt calculation in qla4xxx_send_mbox_iocb()
  [SCSI] ufs: Correct the expected data transfersize
  ...
