tree 5c496257c499edccd14b7b73787248e7ead90d02
parent 5d1f7023fb2233d454ac3ac2fb7cc96fb94e9cac
parent 27ea13e6186c1a5bd0fa2b0d6f854d60ca4ca4c9
author Linus Torvalds <torvalds@linux-foundation.org> 1465670528 -0700
committer Linus Torvalds <torvalds@linux-foundation.org> 1465670528 -0700
mergetag object 27ea13e6186c1a5bd0fa2b0d6f854d60ca4ca4c9
 type commit
 tag scsi-fixes
 tagger James Bottomley <James.Bottomley@HansenPartnership.com> 1465668551 -0700
 
 SCSI fixes on 20160611
 
 Two current fixes: one affects Qemu CD ROM emulation, which stopped
 working after the updates in SCSI to require VPD pages from all
 conformant devices.  Fix temporarily by blacklisting Qemu (we can
 relax later when they come into compliance).  The other is a fix to
 the optimal transfer size.  We set up a minefield for ourselves by
 being confused about whether the limits are in bytes or sectors (SCSI
 optimal is in blocks and the queue parameter is in bytes).  This tries
 to fix the problem (wrong setting for queue limits max_sectors) and
 make the problem more obvious by introducing a wrapper function.
 
 Signed-off-by: James Bottomley <jejb@linux.vnet.ibm.com>
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v2
 
 iQIcBAABAgAGBQJXXFPNAAoJEAVr7HOZEZN4csgP/07DjzZ8Q3Qz4TKnDfXGU+Ba
 qL2feBWk+anJTHM+WZ3RYLemCiG4k2tKtuFt7V1NoYovPXCXTz4QbL1rNqBMRjME
 iD+FHkIXReGMQc8dQTD09UHPY9aEeQLgK/+qJ79PhSuAxZd8PSW+jWR6Df7PNlZ9
 AWIXpcKShRy0YxTacIQg7M8wjgQXyhEC9D0epvJOGxAJvTxT5Ruju6WEzZrkmr4J
 Nv2QXFUhlIPxeADulBJ/0muQLU6ZMW10v7J2SpBAtsgKBJsYCYAhcDMmyZRZkWx3
 CsqKH80BAc7YdqZriH2YJ+5srotCbHDCmsNpCzmjo0lav7ws0m+7jHSaur/YDDOm
 B9c1ZOWpvaHDEMdZzDn2acpC9J+Xcd5kVyIRKU1heMp4MNWBvbak9YHNB1UfJcio
 FTaYEYx1DiXg61rNecGV4i0mqsoUgSB9P8woszPj6Udp5TPkFadjXTqezbsXCFhi
 wCeCyKlALHwm/G74Mds/prUeSpjuUsgJdS4zOm78bG1nZecLOtqk2OJeS0A03y9F
 KKh4aYikG8yskajjr/t9KvKv9yBSrfJA/vtGFwRN92urU/rfhWRihrgHoi/TikfJ
 dIo7EM1VrFYiIPofSdqhlLXRzxM/MlQm71A66tGcnFxv/iMOA1IybukpGz1zGPko
 kepWpHLaWQL07qvluCi3
 =L9za
 -----END PGP SIGNATURE-----

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

Pull SCSI fixes from James Bottomley:
 "Two current fixes:

   - one affects Qemu CD ROM emulation, which stopped working after the
     updates in SCSI to require VPD pages from all conformant devices.

     Fix temporarily by blacklisting Qemu (we can relax later when they
     come into compliance).

   - The other is a fix to the optimal transfer size.  We set up a
     minefield for ourselves by being confused about whether the limits
     are in bytes or sectors (SCSI optimal is in blocks and the queue
     parameter is in bytes).

     This tries to fix the problem (wrong setting for queue limits
     max_sectors) and make the problem more obvious by introducing a
     wrapper function"

* tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
  sd: Fix rw_max for devices that report an optimal xfer size
  scsi: Add QEMU CD-ROM to VPD Inquiry Blacklist
