<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/scsi/hpsa_cmd.h, branch v4.4.48</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>hpsa: add in sas transport class</title>
<updated>2015-11-09T17:39:28+00:00</updated>
<author>
<name>Kevin Barnett</name>
<email>kevin.barnett@pmcs.com</email>
</author>
<published>2015-11-04T21:52:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d04e62b9d63a7498735761dc40eaed88b7fd9d80'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: disable report lun data caching</title>
<updated>2015-11-09T17:39:27+00:00</updated>
<author>
<name>Scott Teel</name>
<email>scott.teel@pmcs.com</email>
</author>
<published>2015-11-04T21:52:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c2adae44e9161612c89e52d233c83086195f454c'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: generalize external arrays</title>
<updated>2015-11-09T17:39:26+00:00</updated>
<author>
<name>Scott Teel</name>
<email>scott.teel@pmcs.com</email>
</author>
<published>2015-11-04T21:51:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=66749d0d617a9cda967f168802f1fb1a6e598a92'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: correct check for non-disk devices</title>
<updated>2015-11-09T17:34:20+00:00</updated>
<author>
<name>Don Brace</name>
<email>don.brace@pmcs.com</email>
</author>
<published>2015-11-04T21:51:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=f2039b03290b3b1e0556b85b7018273e116d17c3'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: add in new offline mode</title>
<updated>2015-08-26T23:28:48+00:00</updated>
<author>
<name>Scott Benesh</name>
<email>scott.benesh@pmcs.com</email>
</author>
<published>2015-07-18T16:13:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=5ca0120447ae8d485e2ee5100f25b6645e3e320f'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: add PMC to copyright</title>
<updated>2015-08-26T23:23:40+00:00</updated>
<author>
<name>Don Brace</name>
<email>don.brace@pmcs.com</email>
</author>
<published>2015-07-18T16:12:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1358f6dc5875f5cef06eeeeb4532f382aaff8483'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: cleanup reset</title>
<updated>2015-06-01T00:47:31+00:00</updated>
<author>
<name>Webb Scales</name>
<email>webbnh@hp.com</email>
</author>
<published>2015-04-23T14:35:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d604f5336aee7e67377bdbcd354ea6a7d3979dcb'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: don't return abort request until target is complete</title>
<updated>2015-05-31T18:37:48+00:00</updated>
<author>
<name>Webb Scales</name>
<email>webbnh@hp.com</email>
</author>
<published>2015-04-23T14:34:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a58e7e53b410c8ed05f0b1b0f37411c76b8e253f'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: add support sending aborts to physical devices via the ioaccel2 path</title>
<updated>2015-05-31T18:36:51+00:00</updated>
<author>
<name>Stephen Cameron</name>
<email>stephenmcameron@gmail.com</email>
</author>
<published>2015-04-23T14:34:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=8be986cc57f1f802a8cd8542ac309a0e6ac24a4b'/>
<id>8be986cc57f1f802a8cd8542ac309a0e6ac24a4b</id>
<content type='text'>
add support for tmf when in ioaccel2 mode

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: Joe Handzik &lt;joseph.t.handzik@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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
add support for tmf when in ioaccel2 mode

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: Joe Handzik &lt;joseph.t.handzik@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;
</pre>
</div>
</content>
</entry>
<entry>
<title>hpsa: add more ioaccel2 error handling, including underrun statuses.</title>
<updated>2015-05-31T18:33:17+00:00</updated>
<author>
<name>Joe Handzik</name>
<email>joseph.t.handzik@hp.com</email>
</author>
<published>2015-04-23T14:33:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c40820d511d4c9bfc8a64f5c920fa0782f5da673'/>
<id>c40820d511d4c9bfc8a64f5c920fa0782f5da673</id>
<content type='text'>
improve ioaccel2 error handling, including better handling of
underrun statuses

Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Signed-off-by: Joe Handzik &lt;joseph.t.handzik@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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
improve ioaccel2 error handling, including better handling of
underrun statuses

Reviewed-by: Scott Teel &lt;scott.teel@pmcs.com&gt;
Reviewed-by: Kevin Barnett &lt;kevin.barnett@pmcs.com&gt;
Signed-off-by: Joe Handzik &lt;joseph.t.handzik@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;
</pre>
</div>
</content>
</entry>
</feed>
