<feed xmlns='http://www.w3.org/2005/Atom'>
<title>litmus-rt.git/drivers/scsi/mpt2sas, branch master</title>
<subtitle>The LITMUS^RT kernel.</subtitle>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/'/>
<entry>
<title>mpt2sas: Bump driver version to 20.100.00.00</title>
<updated>2015-01-13T15:27:29+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:09:04+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=a63bb9ba84c4b32569a6ac6040c2a919b4ff4a14'/>
<id>a63bb9ba84c4b32569a6ac6040c2a919b4ff4a14</id>
<content type='text'>
Bump mpt2sas driver version to 20.100.00.00.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bump mpt2sas driver version to 20.100.00.00.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas, mpt3sas: set cpu affinity for each MSIX vectors</title>
<updated>2015-01-13T15:27:28+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:09:03+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=14b3114d940cdc4fea8afdab8e23508361db027f'/>
<id>14b3114d940cdc4fea8afdab8e23508361db027f</id>
<content type='text'>
Added a support to set cpu affinity mask for each MSIX vector enabled
by the HBA. So that, running the irqbalancer will balance interrupts among
the cpus.

Change_set:
1. Added affinity_hint varable of type cpumask_var_t in adapter_reply_queue
   structure. And allocated a memory for this varable by calling
   alloc_cpumask_var.
2. Call the API irq_set_affinity_hint for each MSIx vector to affiniate it
   with calculated cpus at driver inilization time.
3. While freeing the MSIX vector, call this same API to release the cpu
   affinity mask for each MSIx vector by providing the NULL value in
   cpumask argument.
4. then call the free_cpumask_var API to free the memory allocated in step 2.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added a support to set cpu affinity mask for each MSIX vector enabled
by the HBA. So that, running the irqbalancer will balance interrupts among
the cpus.

Change_set:
1. Added affinity_hint varable of type cpumask_var_t in adapter_reply_queue
   structure. And allocated a memory for this varable by calling
   alloc_cpumask_var.
2. Call the API irq_set_affinity_hint for each MSIx vector to affiniate it
   with calculated cpus at driver inilization time.
3. While freeing the MSIX vector, call this same API to release the cpu
   affinity mask for each MSIx vector by providing the NULL value in
   cpumask argument.
4. then call the free_cpumask_var API to free the memory allocated in step 2.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas, mpt3sas: Update attribution language to Avago</title>
<updated>2015-01-13T15:27:27+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:09:02+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=a03bd153b1b31c24b00d516bdbf9370ab8132650'/>
<id>a03bd153b1b31c24b00d516bdbf9370ab8132650</id>
<content type='text'>
Copyright, Trademark &amp; Confidentiality legal statements throughout the
source code changed from LSI to Avago.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Copyright, Trademark &amp; Confidentiality legal statements throughout the
source code changed from LSI to Avago.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas: map log_info value 0x0x32010081 to DID_RESET</title>
<updated>2015-01-13T15:27:27+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:09:01+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=d2227f737404c6a6e7acbd2dec15da9ee57132c3'/>
<id>d2227f737404c6a6e7acbd2dec15da9ee57132c3</id>
<content type='text'>
For any SCSI command, if the driver receives IOC status =
SCSI_IOC_TERMINATED and log info = 0x32010081 then that command will be
completed with DID_RESET host status.

The definition of this log info value is "Virtual IO has failed and has
to be retried".

Firmware will provide this log info value with IOC Status
"SCSI_IOC_TERMINATED", whenever a drive (with is a part of a volume)
is pulled and pushed back within some minimal delay.  With this log info
value, firmware informs the driver to retry the failed IO command
infinite times, so to provide some time for the firmware to discover
the reinserted drive successfully instated of just retrying failed
command for five times( doesn't giving enough time for firmware to
complete the drive discovery) and failing the IO permanently even
though drive came back successfully.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For any SCSI command, if the driver receives IOC status =
SCSI_IOC_TERMINATED and log info = 0x32010081 then that command will be
completed with DID_RESET host status.

The definition of this log info value is "Virtual IO has failed and has
to be retried".

Firmware will provide this log info value with IOC Status
"SCSI_IOC_TERMINATED", whenever a drive (with is a part of a volume)
is pulled and pushed back within some minimal delay.  With this log info
value, firmware informs the driver to retry the failed IO command
infinite times, so to provide some time for the firmware to discover
the reinserted drive successfully instated of just retrying failed
command for five times( doesn't giving enough time for firmware to
complete the drive discovery) and failing the IO permanently even
though drive came back successfully.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas, mpt3sas: fix upper bound for the module parameter max_sgl_entries</title>
<updated>2015-01-13T15:27:26+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:09:00+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=ad666a0f41d98e4420acdbfd0e5f25e10f768e13'/>
<id>ad666a0f41d98e4420acdbfd0e5f25e10f768e13</id>
<content type='text'>
Change Set:

1. Extended the upper boundary restriction for the module parameter
   max_sgl_entries. Earlier, the max_sgl_entries was capped at the
   SCSI_MAX_SG_SEGMENTS kernel definition. With this change, the user
   would be able to set the max_sgl_entries to any value which is
   greater than SCSI_MAX_SG_SEGMENTS and less than the minimum of
   SCSI_MAX_SG_CHAIN_SEGMENTS &amp; hardware limit (Calculated using
   IOCFacts's MaxChainDepth).

2. Added a print for the message log whenever the user sets the
   max_sgl_entries to a value greater than SCSI_MAX_SG_SEGMENTS to
   warn about the kernel definition overriding.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change Set:

1. Extended the upper boundary restriction for the module parameter
   max_sgl_entries. Earlier, the max_sgl_entries was capped at the
   SCSI_MAX_SG_SEGMENTS kernel definition. With this change, the user
   would be able to set the max_sgl_entries to any value which is
   greater than SCSI_MAX_SG_SEGMENTS and less than the minimum of
   SCSI_MAX_SG_CHAIN_SEGMENTS &amp; hardware limit (Calculated using
   IOCFacts's MaxChainDepth).

2. Added a print for the message log whenever the user sets the
   max_sgl_entries to a value greater than SCSI_MAX_SG_SEGMENTS to
   warn about the kernel definition overriding.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas: MPI2 Rev BB (2.00.20) specification and 2.00.35 header files</title>
<updated>2015-01-13T15:27:25+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:08:59+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=d42432ad6c5cb8e9dea43e3cef711ef740d8a34a'/>
<id>d42432ad6c5cb8e9dea43e3cef711ef740d8a34a</id>
<content type='text'>
Change List in this MPI2 specification,

1. Added SSUTimeout field to MPI2_CONFIG_PAGE_BIOS_1,
   and more defines for the BiosOptions field.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change List in this MPI2 specification,

1. Added SSUTimeout field to MPI2_CONFIG_PAGE_BIOS_1,
   and more defines for the BiosOptions field.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas: Bump driver version to 19.100.00.00</title>
<updated>2015-01-13T15:27:25+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:08:58+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=2af48d7a82faea38a26e0686d2ac88512de20439'/>
<id>2af48d7a82faea38a26e0686d2ac88512de20439</id>
<content type='text'>
Bump driver version to 19.100.00.00.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bump driver version to 19.100.00.00.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas, mpt3sas: Fail the host reset initiated due to discovery related I/O timeouts at driver load time</title>
<updated>2015-01-13T15:27:24+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:08:57+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=ddb588bebeab4606c8b14f952bfd16f2f8864dda'/>
<id>ddb588bebeab4606c8b14f952bfd16f2f8864dda</id>
<content type='text'>
When a flaky disk is there in a topology then during driver load,
discovery related I/O times out; which results in SCSI error recovery
initiating host reset and then the controller won't see any disk.

In this patch, The driver would return FAILED status to the host reset
initiated due to discovery related I/O timeout if ioc-&gt;is_driver_loading
is set. This flag would be set until we exit out of scsih_scan_finished().
i.e.
During device discovery if one of the disk is flaky
(which responds to some discovery commands and doesn't respond to some)
the driver wouldn't perform host reset for discovery related I/O timeout.
Instead it would return Failure for the host reset resulting in the
flaky disk getting removed by the SCSI Mid layer,
so other disks would be added correctly.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When a flaky disk is there in a topology then during driver load,
discovery related I/O times out; which results in SCSI error recovery
initiating host reset and then the controller won't see any disk.

In this patch, The driver would return FAILED status to the host reset
initiated due to discovery related I/O timeout if ioc-&gt;is_driver_loading
is set. This flag would be set until we exit out of scsih_scan_finished().
i.e.
During device discovery if one of the disk is flaky
(which responds to some discovery commands and doesn't respond to some)
the driver wouldn't perform host reset for discovery related I/O timeout.
Instead it would return Failure for the host reset resulting in the
flaky disk getting removed by the SCSI Mid layer,
so other disks would be added correctly.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas, mpt3sas: log exceeded temperature thresholds</title>
<updated>2015-01-13T15:27:23+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:08:56+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=2d8ce8c9d4b25b88eb4aa6bc52492eb7e0ae1dab'/>
<id>2d8ce8c9d4b25b88eb4aa6bc52492eb7e0ae1dab</id>
<content type='text'>
This patch will log a message when driver receives "Temperature Threshold
exceeded" event from any temperature sensor.

The message will look similar to like:
mpt3sas0: Temperature Threshold flags a b c d exceeded for Sensor: x !!!
mpt3sas0: Current Temp In Celsius: y

where a b c d are threshold flags 0 1 2 3

Change_set:
1. Get the number of sensor count of this IOC by reading IO Unit page 8 at
   driver initialization time.
2. Also unmask the Temperature Threshold Event at driver initialization
   time
3. Whenever a MPI2_EVENT_TEMP_THRESHOLD event is received from the
   firmware, then print the sensor number, the maximum threshold number it
   has exceed and the current temperature of this sensor.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch will log a message when driver receives "Temperature Threshold
exceeded" event from any temperature sensor.

The message will look similar to like:
mpt3sas0: Temperature Threshold flags a b c d exceeded for Sensor: x !!!
mpt3sas0: Current Temp In Celsius: y

where a b c d are threshold flags 0 1 2 3

Change_set:
1. Get the number of sensor count of this IOC by reading IO Unit page 8 at
   driver initialization time.
2. Also unmask the Temperature Threshold Event at driver initialization
   time
3. Whenever a MPI2_EVENT_TEMP_THRESHOLD event is received from the
   firmware, then print the sensor number, the maximum threshold number it
   has exceed and the current temperature of this sensor.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mpt2sas: MPI2 Rev AA (2.00.19) specifications</title>
<updated>2015-01-12T12:15:35+00:00</updated>
<author>
<name>Sreekanth Reddy</name>
<email>sreekanth.reddy@avagotech.com</email>
</author>
<published>2015-01-12T06:08:55+00:00</published>
<link rel='alternate' type='text/html' href='http://rtsrv.cs.unc.edu/cgit/cgit.cgi/litmus-rt.git/commit/?id=cb16ef384f15d33a53b4db47878aa818be059d77'/>
<id>cb16ef384f15d33a53b4db47878aa818be059d77</id>
<content type='text'>
Below is the changeset from the MPI specification and 2.00.34 header
files:

1) Defined additional bits in the BiosOptions field of BIOS Page 1 to
   allow for finer control of X86 BIOS and UEFI BSD.
2) For the Clean Tool, reserved bit 26 of the Flags field for product
   specific use.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Below is the changeset from the MPI specification and 2.00.34 header
files:

1) Defined additional bits in the BiosOptions field of BIOS Page 1 to
   allow for finer control of X86 BIOS and UEFI BSD.
2) For the Clean Tool, reserved bit 26 of the Flags field for product
   specific use.

Signed-off-by: Sreekanth Reddy &lt;Sreekanth.Reddy@avagotech.com&gt;
Reviewed-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</pre>
</div>
</content>
</entry>
</feed>
