<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/scsi/hpsa_cmd.h, branch linux-4.4.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.4.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.4.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2019-07-10T07:56:41Z</updated>
<entry>
<title>scsi: hpsa: correct ioaccel2 chaining</title>
<updated>2019-07-10T07:56:41Z</updated>
<author>
<name>Don Brace</name>
</author>
<published>2019-06-03T21:43:29Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b3e8f6bc2f41fe3192064fbfe42600d0e728b9e8'/>
<id>urn:sha1:b3e8f6bc2f41fe3192064fbfe42600d0e728b9e8</id>
<content type='text'>
[ Upstream commit 625d7d3518875c4d303c652a198feaa13d9f52d9 ]

- set ioaccel2_sg_element member 'chain_indicator' to IOACCEL2_LAST_SG for
  the last s/g element.

- set ioaccel2_sg_element member 'chain_indicator' to IOACCEL2_CHAIN when
  chaining.

Reviewed-by: Bader Ali - Saleh &lt;bader.alisaleh@microsemi.com&gt;
Reviewed-by: Scott Teel &lt;scott.teel@microsemi.com&gt;
Reviewed-by: Matt Perricone &lt;matt.perricone@microsemi.com&gt;
Signed-off-by: Don Brace &lt;don.brace@microsemi.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>scsi: hpsa: update check for logical volume status</title>
<updated>2017-12-20T09:04:54Z</updated>
<author>
<name>Don Brace</name>
</author>
<published>2017-03-10T20:35:11Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0a609298214bed0db80da031e9193b2c39a96c3b'/>
<id>urn:sha1:0a609298214bed0db80da031e9193b2c39a96c3b</id>
<content type='text'>
[ Upstream commit 85b29008d8af6d94a0723aaa8d93cfb6e041158b ]

 - Add in a new case for volume offline. Resolves internal testing bug
   for multilun array management.
 - Return correct status for failed TURs.

Reviewed-by: Scott Benesh &lt;scott.benesh@microsemi.com&gt;
Reviewed-by: Scott Teel &lt;scott.teel@microsemi.com&gt;
Signed-off-by: Don Brace &lt;don.brace@microsemi.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>hpsa: add in sas transport class</title>
<updated>2015-11-09T17:39:28Z</updated>
<author>
<name>Kevin Barnett</name>
</author>
<published>2015-11-04T21:52:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d04e62b9d63a7498735761dc40eaed88b7fd9d80'/>
<id>urn:sha1:d04e62b9d63a7498735761dc40eaed88b7fd9d80</id>
<content type='text'>
Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Justin Lindley &lt;justin.lindley@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Matthew R. Ochs &lt;mrochs@linux.vnet.ibm.com&gt;
Signed-off-by: Don Brace &lt;don.brace@pmcs.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>hpsa: disable report lun data caching</title>
<updated>2015-11-09T17:39:27Z</updated>
<author>
<name>Scott Teel</name>
</author>
<published>2015-11-04T21:52:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c2adae44e9161612c89e52d233c83086195f454c'/>
<id>urn:sha1:c2adae44e9161612c89e52d233c83086195f454c</id>
<content type='text'>
When external target arrays are present, disable the firmware's
normal behavior of returning a cached copy of the report lun data,
and force it to collect new data each time we request a report luns.

This is necessary for external arrays, since there may be no
reliable signal from the external array to the smart array when
lun configuration changes, and thus when driver requests
report luns, it may be stale data.

Use diag options to turn off RPL data caching.

Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Justin Lindley &lt;justin.lindley@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
Reviewed-by: Matthew R. Ochs &lt;mrochs@linux.vnet.ibm.com&gt;
Signed-off-by: Don Brace &lt;don.brace@pmcs.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>hpsa: generalize external arrays</title>
<updated>2015-11-09T17:39:26Z</updated>
<author>
<name>Scott Teel</name>
</author>
<published>2015-11-04T21:51:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=66749d0d617a9cda967f168802f1fb1a6e598a92'/>
<id>urn:sha1:66749d0d617a9cda967f168802f1fb1a6e598a92</id>
<content type='text'>
External array LUNs must use target and lun numbers assigned by the
external array. So the driver must treat these differently from
local LUNs when assigning lun/target.

LUN's 'model' field has been used to detect Lun types that need
special treatment, but the desire is to eliminate the need to reference
specific array models, and support any external array.

Pass-through RAID (PTRAID) luns are not luns of the local controller,
so they are not reported in LUN count of command 'ID controller'.
However, they ARE reported in "Report logical Luns" command.
Local luns are listed first, then PTRAID LUNs.

The number of luns from "Report LUNs" in excess of those reported by
'ID controller' are therefore the PTRAID LUNS.

We can now remove function is_ext_target, and the 'white list'
array of supported model names.

Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Justin Lindley &lt;justin.lindley@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Signed-off-by: Don Brace &lt;don.brace@pmcs.com&gt;
Reviewed-by: Matthew R. Ochs &lt;mrochs@linux.vnet.ibm.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>hpsa: correct check for non-disk devices</title>
<updated>2015-11-09T17:34:20Z</updated>
<author>
<name>Don Brace</name>
</author>
<published>2015-11-04T21:51:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f2039b03290b3b1e0556b85b7018273e116d17c3'/>
<id>urn:sha1:f2039b03290b3b1e0556b85b7018273e116d17c3</id>
<content type='text'>
The driver is using two MACROs which seemingly are looking in
the wrong location for the device_flags returned from
CISS_REPORT_PHYS. Both MACROs, NON_DISK_PHYS_DEV and
PHYS_IOACCEL, are using the pointer returned from figure_lunaddrbytes
which is the address of the LUN.lunid element in
the extended CISS_REPORT_PHYS.  But the MACROS are using offsets
beyond the range of the element (offset 17 of an 8 byte element).

These MACROs actually are looking at the correct location but
they fail static checker analysis. It also will not work
if any new elements are added to the extended LUN structure.

Change the code to use the structure elements directly
since this MACRO is only used in one location.

Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Justin Lindley &lt;justin.lindley@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@suse.de&gt;
Signed-off-by: Don Brace &lt;don.brace@pmcs.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</content>
</entry>
<entry>
<title>hpsa: add in new offline mode</title>
<updated>2015-08-26T23:28:48Z</updated>
<author>
<name>Scott Benesh</name>
</author>
<published>2015-07-18T16:13:04Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5ca0120447ae8d485e2ee5100f25b6645e3e320f'/>
<id>urn:sha1:5ca0120447ae8d485e2ee5100f25b6645e3e320f</id>
<content type='text'>
prevent adding volumes that are not available.

Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Justin Lindley &lt;justin.lindley@pmcs.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Signed-off-by: Don Brace &lt;don.brace@pmcs.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Odin.com&gt;
</content>
</entry>
<entry>
<title>hpsa: add PMC to copyright</title>
<updated>2015-08-26T23:23:40Z</updated>
<author>
<name>Don Brace</name>
</author>
<published>2015-07-18T16:12:38Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1358f6dc5875f5cef06eeeeb4532f382aaff8483'/>
<id>urn:sha1:1358f6dc5875f5cef06eeeeb4532f382aaff8483</id>
<content type='text'>
need to add PMC to copyright notice and update the Hewlett-Packard
copyright notification.

Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Reviewed-by: Justin Lindley &lt;justin.lindley@pmcs.com&gt;
Signed-off-by: Don Brace &lt;don.brace@pmcs.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Odin.com&gt;
</content>
</entry>
<entry>
<title>hpsa: cleanup reset</title>
<updated>2015-06-01T00:47:31Z</updated>
<author>
<name>Webb Scales</name>
</author>
<published>2015-04-23T14:35:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d604f5336aee7e67377bdbcd354ea6a7d3979dcb'/>
<id>urn:sha1:d604f5336aee7e67377bdbcd354ea6a7d3979dcb</id>
<content type='text'>
Synchronize completion the reset with completion of outstanding commands

Extending the newly-added synchronous abort functionality,
now also synchronize resets with the completion of outstanding commands.
Rename the wait queue to reflect the fact that it's being used for both
types of waits.  Also, don't complete commands which are terminated
due to a reset operation.

fix for controller lockup during reset

Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@Suse.de&gt;
Signed-off-by: Webb Scales &lt;webbnh@hp.com&gt;
Signed-off-by: Don Brace &lt;don.brace@pmcs.com&gt;
Reviewed-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Odin.com&gt;
</content>
</entry>
<entry>
<title>hpsa: don't return abort request until target is complete</title>
<updated>2015-05-31T18:37:48Z</updated>
<author>
<name>Webb Scales</name>
</author>
<published>2015-04-23T14:34:16Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a58e7e53b410c8ed05f0b1b0f37411c76b8e253f'/>
<id>urn:sha1:a58e7e53b410c8ed05f0b1b0f37411c76b8e253f</id>
<content type='text'>
Don't return from the abort request until the target command is complete.
Mark outstanding commands which have a pending abort, and do not send them
to the host if we can avoid it.

If the current command has been aborted, do not call the SCSI command
completion routine from the I/O path: when the abort returns successfully,
the SCSI mid-layer will handle the completion implicitly.

The following race was possible in theory.

1. LLD is requested to abort a scsi command
2. scsi command completes
3. The struct CommandList associated with 2 is made available.
4. new io request to LLD to another LUN re-uses struct CommandList
5. abort handler follows scsi_cmnd-&gt;host_scribble and
   finds struct CommandList and tries to aborts it.

Now we have aborted the wrong command.

Fix by resetting the scsi_cmd field of struct CommandList
upon completion and making the abort handler check that
the scsi_cmd pointer in the CommadList struct matches the
scsi_cmnd that it has been asked to abort.

Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Hannes Reinecke &lt;hare@Suse.de&gt;
Signed-off-by: Webb Scales &lt;webbnh@hp.com&gt;
Signed-off-by: Don Brace &lt;don.brace@pmcs.com&gt;
Reviewed-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Odin.com&gt;
</content>
</entry>
</feed>
