<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/scsi, branch v2.6.27.7</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/include/scsi?h=v2.6.27.7</id>
<link rel='self' href='https://git.amat.us/linux/atom/include/scsi?h=v2.6.27.7'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2008-08-29T14:19:11Z</updated>
<entry>
<title>[SCSI] fix check of PQ and PDT bits for WLUNs</title>
<updated>2008-08-29T14:19:11Z</updated>
<author>
<name>James Bottomley</name>
<email>James.Bottomley@HansenPartnership.com</email>
</author>
<published>2008-08-21T20:14:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=01b291bd66564b4bd826326af6bd0b6d17e99439'/>
<id>urn:sha1:01b291bd66564b4bd826326af6bd0b6d17e99439</id>
<content type='text'>
For IBM z series certain LUNs can no longer be accessed.

This is because kernel version 2.6.19 a check was introduced not to
create a generic SCSI device for devices that return PQ=1 and
PDT=0x1f. For WLUNs (see SAM-3, p. 41ff) generic SCSI devices should
be created unconditionally without looking at the PQ bit, so add a
check for WLUNs in with this test.

Acked-by: Martin Petermann &lt;martin@linux.vnet.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
</entry>
<entry>
<title>[SCSI] sd: fix USB devices incorrectly reporting DIF support</title>
<updated>2008-08-06T17:49:23Z</updated>
<author>
<name>Hugh Dickins</name>
<email>hugh@veritas.com</email>
</author>
<published>2008-08-06T17:21:18Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d211f052fa58a053639bc51501cb64421157d362'/>
<id>urn:sha1:d211f052fa58a053639bc51501cb64421157d362</id>
<content type='text'>
Some USB devices set the protect bit in the INQUIRY data which
currently causes the DIF code in sd to assume (incorrectly) that they
support READ_CAPACITY(16).  Fix this (only for the time being) by
making sure we only believe the protect bit in the inquiry data if the
device claims conformance to SCSI-3 or above.

Acked-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
</entry>
<entry>
<title>Re-introduce "[SCSI] extend the last_sector_bug flag to cover more sectors"</title>
<updated>2008-08-06T04:42:21Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2008-08-06T04:42:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=18351070b86d155713cf790b26af4f21b1fd0b29'/>
<id>urn:sha1:18351070b86d155713cf790b26af4f21b1fd0b29</id>
<content type='text'>
This re-introduces commit 2b142900784c6e38c8d39fa57d5f95ef08e735d8,
which was reverted due to the regression it caused by commit
fca082c9f1e11ec07efa8d2f9f13688521253f36.

That regression was not root-caused by the original commit, it was just
uncovered by it, and the real fix was done by Alan Stern in commit
580da34847488b404218d1d7f53b156f245f5555 ("Fix USB storage hang on
command abort").

We can thus re-introduce the change that was confirmed by Alan Jenkins
to be still required by his odd card reader.

Cc: Alan Jenkins &lt;alan-jenkins@tuffmail.co.uk&gt;
Cc: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Cc: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>Revert "[SCSI] extend the last_sector_bug flag to cover more sectors"</title>
<updated>2008-08-04T23:36:20Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2008-08-04T23:36:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fca082c9f1e11ec07efa8d2f9f13688521253f36'/>
<id>urn:sha1:fca082c9f1e11ec07efa8d2f9f13688521253f36</id>
<content type='text'>
This reverts commit 2b142900784c6e38c8d39fa57d5f95ef08e735d8, since it
seems to break some other USB storage devices (at least a JMicron USB to
ATA bridge).  As such, while it apparently fixes some cardreaders, it
would need to be made conditional on the exact reader it fixes in order
to avoid causing regressions.

Cc: Alan Jenkins &lt;alan-jenkins@tuffmail.co.uk&gt;
Cc: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>[SCSI] extend the last_sector_bug flag to cover more sectors</title>
<updated>2008-07-27T14:16:13Z</updated>
<author>
<name>Alan Jenkins</name>
<email>alan-jenkins@tuffmail.co.uk</email>
</author>
<published>2008-07-27T08:38:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2b142900784c6e38c8d39fa57d5f95ef08e735d8'/>
<id>urn:sha1:2b142900784c6e38c8d39fa57d5f95ef08e735d8</id>
<content type='text'>
The last_sector_bug flag was added to work around a bug in certain usb
cardreaders, where they would crash if a multiple sector read included the
last sector. The original implementation avoids this by e.g. splitting an 8
sector read which includes the last sector into a 7 sector read, and a single
sector read for the last sector.  The flag is enabled for all USB devices.

This revealed a second bug in other usb cardreaders, which crash when they
get a multiple sector read which stops 1 sector short of the last sector.
Affected hardware includes the Kingston "MobileLite" external USB cardreader
and the internal USB cardreader on the Asus EeePC.

Extend the last_sector_bug workaround to ensure that any access which touches
the last 8 hardware sectors of the device is a single sector long.  Requests
are shrunk as necessary to meet this constraint.

This gives us a safety margin against potential unknown or future bugs
affecting multi-sector access to the end of the device.  The two known bugs
only affect the last 2 sectors.  However, they suggest that these devices
are prone to fencepost errors and that multi-sector access to the end of the
device is not well tested.  Popular OS's use multi-sector accesses, but they
rarely read the last few sectors.  Linux (with udev &amp; vol_id) automatically
reads sectors from the end of the device on insertion.  It is assumed that
single sector accesses are more thoroughly tested during development.

Signed-off-by: Alan Jenkins &lt;alan-jenkins@tuffmail.co.uk&gt;
Tested-by: Alan Jenkins &lt;alan-jenkins@tuffmail.co.uk&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
</entry>
<entry>
<title>[SCSI] scsi_eh_prep_cmnd should save scmd-&gt;underflow</title>
<updated>2008-07-26T19:14:56Z</updated>
<author>
<name>Alan Stern</name>
<email>stern@rowland.harvard.edu</email>
</author>
<published>2008-07-21T14:25:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=12265709ac6e197f4d40d9ec1fd3af97b4196a35'/>
<id>urn:sha1:12265709ac6e197f4d40d9ec1fd3af97b4196a35</id>
<content type='text'>
This patch (as1116) fixes a bug in scsi_eh_prep_cmnd() and
scsi_eh_restore_cmnd().  These routines are supposed to save any
values they change and restore them later, but someone forgot to
save &amp; restore scmd-&gt;underflow.

This fixes part of the problem reported in Bugzilla #9638.

[jejb: fix up rejections around DIF/DIX]
Signed-off-by: Alan Stern &lt;stern@rowland.harvard.edu&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
</entry>
<entry>
<title>[SCSI] Support devices with protection information</title>
<updated>2008-07-26T19:14:55Z</updated>
<author>
<name>Martin K. Petersen</name>
<email>martin.petersen@oracle.com</email>
</author>
<published>2008-07-17T21:08:48Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=7027ad72a689797475973c6feb5f0b673382f779'/>
<id>urn:sha1:7027ad72a689797475973c6feb5f0b673382f779</id>
<content type='text'>
Implement support for DMA of protection information for devices that
are data integrity capable.

 - Add support for mapping an extra scatter-gather list containing
   the protection information.

 - Allocate protection scsi_data_buffer if host is DIX (integrity DMA)
   capable.

 - Accessor function for checking whether a device has protection
   enabled.

Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
</entry>
<entry>
<title>[SCSI] Command protection operation</title>
<updated>2008-07-26T19:14:54Z</updated>
<author>
<name>Martin K. Petersen</name>
<email>martin.petersen@oracle.com</email>
</author>
<published>2008-07-17T08:28:31Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=db007fc5e20c00b356e9ffe2d0e007398c65c837'/>
<id>urn:sha1:db007fc5e20c00b356e9ffe2d0e007398c65c837</id>
<content type='text'>
Controllers that support DMA of protection information must be told
explicitly how to handle the I/O.  The controller has no knowledge of
the protection capabilities of the target device so this information
must be passed in the scsi_cmnd.

 - The protection operation tells the HBA whether to generate, strip or
   verify protection information.

 - The protection type tells the HBA which layout the target is
   formatted with.  This is necessary because the controller must be
   able to correctly interpret the included protection information in
   order to verify it.

 - When a scsi_cmnd is reused for error handling the protection
   operation must be cleared and saved while error handling is in
   progress.

 - prot_op and prot_type are placed in an existing hole in scsi_cmnd
   and don't cause the structure to grow.

Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
</entry>
<entry>
<title>[SCSI] Host protection capabilities</title>
<updated>2008-07-26T19:14:54Z</updated>
<author>
<name>Martin K. Petersen</name>
<email>martin.petersen@oracle.com</email>
</author>
<published>2008-07-17T08:28:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4469f9878059f1707f021512e6b34252c4096ee7'/>
<id>urn:sha1:4469f9878059f1707f021512e6b34252c4096ee7</id>
<content type='text'>
Controllers that support protection information must indicate this to
the SCSI midlayer so that the ULD can prepare scsi_cmnds accordingly.

This patch implements a host mask and various types of protection:

 - DIF Type 1-3 (between HBA and disk)
 - DIX Type 0-3 (between OS and HBA)

The patch also allows the HBA to set the guard type to something
different than the T10-mandated CRC.

Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
</entry>
<entry>
<title>[SCSI] scsi_dh: attach to hardware handler from dm-mpath</title>
<updated>2008-07-26T19:14:53Z</updated>
<author>
<name>Hannes Reinecke</name>
<email>hare@suse.de</email>
</author>
<published>2008-07-18T00:49:02Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ae11b1b36da726a8a93409b896704edc6b4f3402'/>
<id>urn:sha1:ae11b1b36da726a8a93409b896704edc6b4f3402</id>
<content type='text'>
multipath keeps a separate device table which may be
more current than the built-in one.
So we should make sure to always call -&gt;attach whenever
a multipath map with hardware handler is instantiated.
And we should call -&gt;detach on removal, too.

[sekharan: update as per comments from agk]
Signed-off-by: Hannes Reinecke &lt;hare@suse.de&gt;
Signed-off-by: Chandra Seetharaman &lt;sekharan@us.ibm.com&gt;
Signed-off-by: James Bottomley &lt;James.Bottomley@HansenPartnership.com&gt;
</content>
</entry>
</feed>
