<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/scsi, branch v3.2-rt10</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>scsi-fcoe-rt-aware.patch</title>
<updated>2012-01-16T19:00:36+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-11-12T13:00:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=15ecc063cba12b57bc85963e54930ca05cd4d013'/>
<id>15ecc063cba12b57bc85963e54930ca05cd4d013</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] fcoe: fix fcoe in a DCB environment by adding DCB notifiers to set skb priority</title>
<updated>2011-12-15T07:02:07+00:00</updated>
<author>
<name>john fastabend</name>
<email>john.r.fastabend@intel.com</email>
</author>
<published>2011-11-18T21:35:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=6f6c2aa33b915c574543f176dee89d7aefc115c1'/>
<id>6f6c2aa33b915c574543f176dee89d7aefc115c1</id>
<content type='text'>
Use DCB notifiers to set the skb priority to allow packets
to be steered and tagged correctly over DCB enabled drivers
that setup traffic classes.

This allows queue_mapping() routines to be removed in these
drivers that were previously inspecting the ethertype of
every skb to mark FCoE/FIP frames.

Signed-off-by: John Fastabend &lt;john.r.fastabend@intel.com&gt;
Signed-off-by: Robert Love &lt;robert.w.love@intel.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use DCB notifiers to set the skb priority to allow packets
to be steered and tagged correctly over DCB enabled drivers
that setup traffic classes.

This allows queue_mapping() routines to be removed in these
drivers that were previously inspecting the ethertype of
every skb to mark FCoE/FIP frames.

Signed-off-by: John Fastabend &lt;john.r.fastabend@intel.com&gt;
Signed-off-by: Robert Love &lt;robert.w.love@intel.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] bnx2i: Fixed kernel panic caused by unprotected task-&gt;sc-&gt;request deref</title>
<updated>2011-12-14T13:05:23+00:00</updated>
<author>
<name>Eddie Wai</name>
<email>eddie.wai@broadcom.com</email>
</author>
<published>2011-12-07T06:41:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a878185c3b93e692ace0d1628a47f3d75504ab4f'/>
<id>a878185c3b93e692ace0d1628a47f3d75504ab4f</id>
<content type='text'>
During session recovery, the conn_stop call will trigger a flush
to all outstanding SCSI cmds in the xmit queue.  This will set
all outstanding task-&gt;sc to NULL prior to the session_teardown
call which frees the task memory.

In the bnx2i SCSI response processing path, only the task was being checked
for NULL under the session lock before the task-&gt;sc-&gt;request dereferencing.
If there are outstanding SCSI cmd responses pending for process, the
following kernel panic can be exposed where task-&gt;sc was found to be NULL.

 Call Trace:
[   69.720205]  [&lt;ffffffffa040d0d0&gt;] bnx2i_process_new_cqes+0x290/0x3c0 [bnx2i]
[   69.804289]  [&lt;ffffffffa040d233&gt;] bnx2i_fastpath_notification+0x33/0xa0 [bnx2
i]
[   69.891490]  [&lt;ffffffffa040d37b&gt;] bnx2i_indicate_kcqe+0xdb/0x330 [bnx2i]
[   69.971427]  [&lt;ffffffffa03eac5e&gt;] service_kcqes+0x16e/0x1d0 [cnic]
[   70.045132]  [&lt;ffffffffa03eacea&gt;] cnic_service_bnx2x_kcq+0x2a/0x50 [cnic]
[   70.126105]  [&lt;ffffffffa03ead53&gt;] cnic_service_bnx2x_bh+0x43/0x140 [cnic]
[   70.207081]  [&lt;ffffffff81060676&gt;] tasklet_action+0x66/0x110
[   70.273521]  [&lt;ffffffff8106025f&gt;] __do_softirq+0xef/0x220
[   70.337887]  [&lt;ffffffff81447ebc&gt;] call_softirq+0x1c/0x30

This patch adds the !task-&gt;sc check and also protects the sc dereferencing
under the session lock.

Signed-off-by: Eddie Wai &lt;eddie.wai@broadcom.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
During session recovery, the conn_stop call will trigger a flush
to all outstanding SCSI cmds in the xmit queue.  This will set
all outstanding task-&gt;sc to NULL prior to the session_teardown
call which frees the task memory.

In the bnx2i SCSI response processing path, only the task was being checked
for NULL under the session lock before the task-&gt;sc-&gt;request dereferencing.
If there are outstanding SCSI cmd responses pending for process, the
following kernel panic can be exposed where task-&gt;sc was found to be NULL.

 Call Trace:
[   69.720205]  [&lt;ffffffffa040d0d0&gt;] bnx2i_process_new_cqes+0x290/0x3c0 [bnx2i]
[   69.804289]  [&lt;ffffffffa040d233&gt;] bnx2i_fastpath_notification+0x33/0xa0 [bnx2
i]
[   69.891490]  [&lt;ffffffffa040d37b&gt;] bnx2i_indicate_kcqe+0xdb/0x330 [bnx2i]
[   69.971427]  [&lt;ffffffffa03eac5e&gt;] service_kcqes+0x16e/0x1d0 [cnic]
[   70.045132]  [&lt;ffffffffa03eacea&gt;] cnic_service_bnx2x_kcq+0x2a/0x50 [cnic]
[   70.126105]  [&lt;ffffffffa03ead53&gt;] cnic_service_bnx2x_bh+0x43/0x140 [cnic]
[   70.207081]  [&lt;ffffffff81060676&gt;] tasklet_action+0x66/0x110
[   70.273521]  [&lt;ffffffff8106025f&gt;] __do_softirq+0xef/0x220
[   70.337887]  [&lt;ffffffff81447ebc&gt;] call_softirq+0x1c/0x30

This patch adds the !task-&gt;sc check and also protects the sc dereferencing
under the session lock.

Signed-off-by: Eddie Wai &lt;eddie.wai@broadcom.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] qla4xxx: check for failed conn setup</title>
<updated>2011-12-14T11:40:44+00:00</updated>
<author>
<name>Mike Christie</name>
<email>michaelc@cs.wisc.edu</email>
</author>
<published>2011-12-02T03:38:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ff1d0319ac6a5fd859884b30c0a3cb6733b8fb2d'/>
<id>ff1d0319ac6a5fd859884b30c0a3cb6733b8fb2d</id>
<content type='text'>
iscsi_conn_setup can fail so we must check for NULL being
returned.

Signed-off-by: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
iscsi_conn_setup can fail so we must check for NULL being
returned.

Signed-off-by: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] qla4xxx: a small loop fix</title>
<updated>2011-12-14T11:40:43+00:00</updated>
<author>
<name>Tomas Henzl</name>
<email>thenzl@redhat.com</email>
</author>
<published>2011-12-02T03:38:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e1cd89c507b41e4021ce6fb0d19d230f6a932ccd'/>
<id>e1cd89c507b41e4021ce6fb0d19d230f6a932ccd</id>
<content type='text'>
When the qla4xxx_get_fwddb_entry returns QLA_ERROR
the nex_idx is not updated,
      for (idx = 0; idx &lt; max_ddbs; idx = next_idx) {
                ret = qla4xxx_get_fwddb_entry(ha, idx, NULL, 0, NULL,
                                              &amp;next_idx, &amp;state, &amp;conn_err,
                                                NULL, NULL);
                if (ret == QLA_ERROR)
                        continue;

This means there is a risk that the 'idx &lt; max_ddbs' condition will never
met and the loop will loop forever.
Fix this by explicitly increasing the next_idx in the error condition.

Maybe a break instead of continue is more appropriate, leaving the decision
on the qlogic maintainer.

Signed-off-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Signed-off-by: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the qla4xxx_get_fwddb_entry returns QLA_ERROR
the nex_idx is not updated,
      for (idx = 0; idx &lt; max_ddbs; idx = next_idx) {
                ret = qla4xxx_get_fwddb_entry(ha, idx, NULL, 0, NULL,
                                              &amp;next_idx, &amp;state, &amp;conn_err,
                                                NULL, NULL);
                if (ret == QLA_ERROR)
                        continue;

This means there is a risk that the 'idx &lt; max_ddbs' condition will never
met and the loop will loop forever.
Fix this by explicitly increasing the next_idx in the error condition.

Maybe a break instead of continue is more appropriate, leaving the decision
on the qlogic maintainer.

Signed-off-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Signed-off-by: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] qla4xxx: fix flash/ddb support</title>
<updated>2011-12-14T11:40:43+00:00</updated>
<author>
<name>Mike Christie</name>
<email>michaelc@cs.wisc.edu</email>
</author>
<published>2011-12-02T03:38:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=13483730a13bef372894aefcf73760f5c6c297be'/>
<id>13483730a13bef372894aefcf73760f5c6c297be</id>
<content type='text'>
With open-iscsi support, target entries persisted in the FLASH were not
login. Added support in the qla4xxx driver to do the login on probe
time to the target entries saved in the FLASH by user.
With this changes upgrade to the new kernel with open-iscsi support in
qla4xxx will ensure users original target entries login on driver load

Signed-off-by: Manish Rangankar &lt;manish.rangankar@qlogic.com&gt;
Signed-off-by: Ravi Anand &lt;ravi.anand@qlogic.com&gt;
Signed-off-by: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With open-iscsi support, target entries persisted in the FLASH were not
login. Added support in the qla4xxx driver to do the login on probe
time to the target entries saved in the FLASH by user.
With this changes upgrade to the new kernel with open-iscsi support in
qla4xxx will ensure users original target entries login on driver load

Signed-off-by: Manish Rangankar &lt;manish.rangankar@qlogic.com&gt;
Signed-off-by: Ravi Anand &lt;ravi.anand@qlogic.com&gt;
Signed-off-by: Mike Christie &lt;michaelc@cs.wisc.edu&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] fcoe: Fix preempt count leak in fcoe_filter_frames()</title>
<updated>2011-12-14T11:40:03+00:00</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-11-11T19:52:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=7e1e7ead88dff75b11b86ee0d5232c4591be1326'/>
<id>7e1e7ead88dff75b11b86ee0d5232c4591be1326</id>
<content type='text'>
The error exit path leaks preempt count. Add the missing put_cpu().

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Reviewed-by: Yi Zou &lt;yi.zou@intel.com&gt;
Cc: stable@kernel.org
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The error exit path leaks preempt count. Add the missing put_cpu().

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Reviewed-by: Yi Zou &lt;yi.zou@intel.com&gt;
Cc: stable@kernel.org
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] qla2xxx: Update version number to 8.03.07.12-k.</title>
<updated>2011-12-12T10:08:58+00:00</updated>
<author>
<name>Chad Dupuis</name>
<email>chad.dupuis@qlogic.com</email>
</author>
<published>2011-11-18T17:02:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=09b4402d2c8e36b8d4270c4da235fd7bb312118d'/>
<id>09b4402d2c8e36b8d4270c4da235fd7bb312118d</id>
<content type='text'>
Signed-off-by: Chad Dupuis &lt;chad.dupuis@qlogic.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Chad Dupuis &lt;chad.dupuis@qlogic.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] qla2xxx: Submit all chained IOCBs for passthrough commands on request queue 0.</title>
<updated>2011-12-12T10:08:58+00:00</updated>
<author>
<name>Giridhar Malavali</name>
<email>giridhar.malavali@qlogic.com</email>
</author>
<published>2011-11-18T17:02:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0d2aa38ee9b11be35ef6f91c938dd3441cf64ea4'/>
<id>0d2aa38ee9b11be35ef6f91c938dd3441cf64ea4</id>
<content type='text'>
Signed-off-by: Giridhar Malavali &lt;giridhar.malavali@qlogic.com&gt;
Signed-off-by: Chad Dupuis &lt;chad.dupuis@qlogic.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Giridhar Malavali &lt;giridhar.malavali@qlogic.com&gt;
Signed-off-by: Chad Dupuis &lt;chad.dupuis@qlogic.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>[SCSI] qla2xxx: Correct fc_host port_state display.</title>
<updated>2011-12-12T10:08:58+00:00</updated>
<author>
<name>Saurav Kashyap</name>
<email>saurav.kashyap@qlogic.com</email>
</author>
<published>2011-11-18T17:02:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=49e85c23beb1f12aba59450126ff7e803fbc767d'/>
<id>49e85c23beb1f12aba59450126ff7e803fbc767d</id>
<content type='text'>
[jejb: checkpatch fixes]
Add more fine grain parsing of vha-&gt;loop_state to export a more accurate
fc_host port_state.

Signed-off-by: Saurav Kashyap &lt;saurav.kashyap@qlogic.com&gt;
Signed-off-by: Chad Dupuis &lt;chad.dupuis@qlogic.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[jejb: checkpatch fixes]
Add more fine grain parsing of vha-&gt;loop_state to export a more accurate
fc_host port_state.

Signed-off-by: Saurav Kashyap &lt;saurav.kashyap@qlogic.com&gt;
Signed-off-by: Chad Dupuis &lt;chad.dupuis@qlogic.com&gt;
Signed-off-by: James Bottomley &lt;JBottomley@Parallels.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
