<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/scsi/be2iscsi, branch v4.13-rc5</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: be2iscsi: switch to pci_alloc_irq_vectors</title>
<updated>2017-03-30T15:37:16+00:00</updated>
<author>
<name>Christoph Hellwig</name>
<email>hch@lst.de</email>
</author>
<published>2017-01-13T16:29:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=831488669a334ea10f60361bb90f473ce7f655ff'/>
<id>831488669a334ea10f60361bb90f473ce7f655ff</id>
<content type='text'>
And get automatic MSI-X affinity for free.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.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>
And get automatic MSI-X affinity for free.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Acked-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Update driver version</title>
<updated>2017-03-28T02:03:42+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=cbe9fc8594e503ff071b8d2e0ce503457029b0fb'/>
<id>cbe9fc8594e503ff071b8d2e0ce503457029b0fb</id>
<content type='text'>
Version 11.4.0.0

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.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>
Version 11.4.0.0

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Update Copyright</title>
<updated>2017-03-28T02:03:41+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=942b76542ea042a1cb7d51ce493865f892f0fe00'/>
<id>942b76542ea042a1cb7d51ce493865f892f0fe00</id>
<content type='text'>
Update Broadcom Copyright markings in all files.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.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>
Update Broadcom Copyright markings in all files.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Check size before copying ASYNC handle</title>
<updated>2017-03-28T02:03:41+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0ddee50e3f22964864b1a5f3cc632dd306ed1060'/>
<id>0ddee50e3f22964864b1a5f3cc632dd306ed1060</id>
<content type='text'>
Data in buffers are gathered into a single buffer before giving to iSCSI
layer. Though less likely to have payload more than 8K in ASYNC PDU, the
data length is provide by FW and check is missing for overrun.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.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>
Data in buffers are gathered into a single buffer before giving to iSCSI
layer. Though less likely to have payload more than 8K in ASYNC PDU, the
data length is provide by FW and check is missing for overrun.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Remove free_list for ASYNC handles</title>
<updated>2017-03-28T02:03:40+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=ba6983a745fa292c36a93cac18abaf3f316f70d1'/>
<id>ba6983a745fa292c36a93cac18abaf3f316f70d1</id>
<content type='text'>
With previous patch adding ASYNC Rx buffers to free_list is not
required.  Remove all free_list related operations.

Add in_use to track if buffer posted is being processed by driver and
purge all buffers received for connection if found so.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.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>
With previous patch adding ASYNC Rx buffers to free_list is not
required.  Remove all free_list related operations.

Add in_use to track if buffer posted is being processed by driver and
purge all buffers received for connection if found so.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Use num_cons field in Rx CQE</title>
<updated>2017-03-28T02:03:39+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1e2931f134d44e413281dfc458b537d170e98596'/>
<id>1e2931f134d44e413281dfc458b537d170e98596</id>
<content type='text'>
FW runs out of buffer if buffers are not posted back soon.  ASYNC Rx CQE
indicates that FW has consumed 8 RQEs.  Use it to post back buffers
instead of waiting for buffers to be processed and freed by driver.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.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>
FW runs out of buffer if buffers are not posted back soon.  ASYNC Rx CQE
indicates that FW has consumed 8 RQEs.  Use it to post back buffers
instead of waiting for buffers to be processed and freed by driver.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Increase HDQ default queue size</title>
<updated>2017-03-28T02:03:39+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=fecc3824696c18dbaf95abe8f3d2480b6aee76f0'/>
<id>fecc3824696c18dbaf95abe8f3d2480b6aee76f0</id>
<content type='text'>
Currently, ASYNC PDU default queue size is set to max connections.  This
leaves only one buffer per connection for any ASYNC PDUs from targets.

Double the size of the default queue.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.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>
Currently, ASYNC PDU default queue size is set to max connections.  This
leaves only one buffer per connection for any ASYNC PDUs from targets.

Double the size of the default queue.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Replace spin_unlock_bh with spin_lock</title>
<updated>2017-03-28T02:03:04+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d1e1d63b32b79a6b3d93ce7a6dd0d48b8cf472fd'/>
<id>d1e1d63b32b79a6b3d93ce7a6dd0d48b8cf472fd</id>
<content type='text'>
spin_unlock_bh back_lock is used in beiscsi_eh_device_reset instead of
spin_lock.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.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>
spin_unlock_bh back_lock is used in beiscsi_eh_device_reset instead of
spin_lock.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Fix closing of connection</title>
<updated>2017-03-28T02:03:04+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=49fc5152f5904aeab75aaef631ea61dff7ee76d8'/>
<id>49fc5152f5904aeab75aaef631ea61dff7ee76d8</id>
<content type='text'>
CID needs to be freed even when invalidate or upload connection fails.
Attempt to close connection 3 times before freeing CID.

Set cleanup_type to INVALIDATE instead of force TCP_RST.  This
unnecessarily is terminating connection with reset instead of gracefully
closing it.

Set save_cfg to 0 - session not to be saved on flash.

Add delay and process CQ before uploading connection.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.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>
CID needs to be freed even when invalidate or upload connection fails.
Attempt to close connection 3 times before freeing CID.

Set cleanup_type to INVALIDATE instead of force TCP_RST.  This
unnecessarily is terminating connection with reset instead of gracefully
closing it.

Set save_cfg to 0 - session not to be saved on flash.

Add delay and process CQ before uploading connection.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>scsi: be2iscsi: Check tag in beiscsi_mccq_compl_wait</title>
<updated>2017-03-28T02:03:04+00:00</updated>
<author>
<name>Jitendra Bhivare</name>
<email>jitendra.bhivare@broadcom.com</email>
</author>
<published>2017-03-24T08:41:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=eb419229be58dc6d4a3a814116a265908e088c39'/>
<id>eb419229be58dc6d4a3a814116a265908e088c39</id>
<content type='text'>
scsi host12: BS_1377 : mgmt_invalidate_connection Failed for cid=256
BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
IP: [&lt;ffffffff81332ebf&gt;] __list_add+0xf/0xc0
PGD 0
Oops: 0000 [#1] SMP
Modules linked in:
...
CPU: 9 PID: 1542 Comm: iscsid Tainted: G               ------------ T 3.10.0-514.el7.x86_64 #1
Hardware name: HP ProLiant DL360 Gen9/ProLiant DL360 Gen9, BIOS P89 09/12/2016
task: ffff88076f310fb0 ti: ffff88076bba8000 task.ti: ffff88076bba8000
RIP: 0010:[&lt;ffffffff81332ebf&gt;]  [&lt;ffffffff81332ebf&gt;] __list_add+0xf/0xc0
RSP: 0018:ffff88076bbab8e8  EFLAGS: 00010046
RAX: 0000000000000246 RBX: ffff88076bbab990 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffff880468badf58 RDI: ffff88076bbab990
RBP: ffff88076bbab900 R08: 0000000000000246 R09: 00000000000020de
R10: 0000000000000000 R11: ffff88076bbab5be R12: 0000000000000000
R13: ffff880468badf58 R14: 000000000001adb0 R15: ffff88076f310fb0
FS:  00007f377124a880(0000) GS:ffff88046fa40000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000008 CR3: 0000000771318000 CR4: 00000000001407e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Stack:
ffff88076bbab990 ffff880468badf50 0000000000000001 ffff88076bbab938
ffffffff810b128b 0000000000000246 00000000cf9b7040 ffff880468bac7a0
0000000000000000 ffff880468bac7a0 ffff88076bbab9d0 ffffffffa05a6ea3

Call Trace:
[&lt;ffffffff810b128b&gt;] prepare_to_wait+0x7b/0x90
[&lt;ffffffffa05a6ea3&gt;] beiscsi_mccq_compl_wait+0x153/0x330 [be2iscsi]
[&lt;ffffffff810b1600&gt;] ? wake_up_atomic_t+0x30/0x30
[&lt;ffffffffa05981b1&gt;] beiscsi_ep_disconnect+0x91/0x2d0 [be2iscsi]
[&lt;ffffffffa0202ffa&gt;] iscsi_if_ep_disconnect.isra.14+0x5a/0x70 [scsi_transport_iscsi]
[&lt;ffffffffa02042fb&gt;] iscsi_if_recv_msg+0x113b/0x14a0 [scsi_transport_iscsi]
[&lt;ffffffff811dffd8&gt;] ? __kmalloc_node_track_caller+0x58/0x290
[&lt;ffffffffa02046ee&gt;] iscsi_if_rx+0x8e/0x1f0 [scsi_transport_iscsi]
[&lt;ffffffff815a351d&gt;] netlink_unicast+0xed/0x1b0
[&lt;ffffffff815a38fe&gt;] netlink_sendmsg+0x31e/0x690
[&lt;ffffffff815a03e4&gt;] ? netlink_rcv_wake+0x44/0x60
[&lt;ffffffff815a19e3&gt;] ? netlink_recvmsg+0x1e3/0x450

beiscsi_mccq_compl_wait gets called even when MCC tag allocation failed
for mgmt_invalidate_connection.  mcc_wait is not initialized for tag 0
so causes crash in prepare_to_wait.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.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>
scsi host12: BS_1377 : mgmt_invalidate_connection Failed for cid=256
BUG: unable to handle kernel NULL pointer dereference at 0000000000000008
IP: [&lt;ffffffff81332ebf&gt;] __list_add+0xf/0xc0
PGD 0
Oops: 0000 [#1] SMP
Modules linked in:
...
CPU: 9 PID: 1542 Comm: iscsid Tainted: G               ------------ T 3.10.0-514.el7.x86_64 #1
Hardware name: HP ProLiant DL360 Gen9/ProLiant DL360 Gen9, BIOS P89 09/12/2016
task: ffff88076f310fb0 ti: ffff88076bba8000 task.ti: ffff88076bba8000
RIP: 0010:[&lt;ffffffff81332ebf&gt;]  [&lt;ffffffff81332ebf&gt;] __list_add+0xf/0xc0
RSP: 0018:ffff88076bbab8e8  EFLAGS: 00010046
RAX: 0000000000000246 RBX: ffff88076bbab990 RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffff880468badf58 RDI: ffff88076bbab990
RBP: ffff88076bbab900 R08: 0000000000000246 R09: 00000000000020de
R10: 0000000000000000 R11: ffff88076bbab5be R12: 0000000000000000
R13: ffff880468badf58 R14: 000000000001adb0 R15: ffff88076f310fb0
FS:  00007f377124a880(0000) GS:ffff88046fa40000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000008 CR3: 0000000771318000 CR4: 00000000001407e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Stack:
ffff88076bbab990 ffff880468badf50 0000000000000001 ffff88076bbab938
ffffffff810b128b 0000000000000246 00000000cf9b7040 ffff880468bac7a0
0000000000000000 ffff880468bac7a0 ffff88076bbab9d0 ffffffffa05a6ea3

Call Trace:
[&lt;ffffffff810b128b&gt;] prepare_to_wait+0x7b/0x90
[&lt;ffffffffa05a6ea3&gt;] beiscsi_mccq_compl_wait+0x153/0x330 [be2iscsi]
[&lt;ffffffff810b1600&gt;] ? wake_up_atomic_t+0x30/0x30
[&lt;ffffffffa05981b1&gt;] beiscsi_ep_disconnect+0x91/0x2d0 [be2iscsi]
[&lt;ffffffffa0202ffa&gt;] iscsi_if_ep_disconnect.isra.14+0x5a/0x70 [scsi_transport_iscsi]
[&lt;ffffffffa02042fb&gt;] iscsi_if_recv_msg+0x113b/0x14a0 [scsi_transport_iscsi]
[&lt;ffffffff811dffd8&gt;] ? __kmalloc_node_track_caller+0x58/0x290
[&lt;ffffffffa02046ee&gt;] iscsi_if_rx+0x8e/0x1f0 [scsi_transport_iscsi]
[&lt;ffffffff815a351d&gt;] netlink_unicast+0xed/0x1b0
[&lt;ffffffff815a38fe&gt;] netlink_sendmsg+0x31e/0x690
[&lt;ffffffff815a03e4&gt;] ? netlink_rcv_wake+0x44/0x60
[&lt;ffffffff815a19e3&gt;] ? netlink_recvmsg+0x1e3/0x450

beiscsi_mccq_compl_wait gets called even when MCC tag allocation failed
for mgmt_invalidate_connection.  mcc_wait is not initialized for tag 0
so causes crash in prepare_to_wait.

Signed-off-by: Jitendra Bhivare &lt;jitendra.bhivare@broadcom.com&gt;
Reviewed-by: Tomas Henzl &lt;thenzl@redhat.com&gt;
Reviewed-by: Chris Leech &lt;cleech@redhat.com&gt;
Signed-off-by: Martin K. Petersen &lt;martin.petersen@oracle.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
