<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/infiniband/core/mad.c, branch linux-4.8.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.8.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.8.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2017-01-09T07:21:58Z</updated>
<entry>
<title>IB/mad: Fix an array index check</title>
<updated>2017-01-09T07:21:58Z</updated>
<author>
<name>Bart Van Assche</name>
</author>
<published>2016-11-21T18:21:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f079fc11f28e6e2e6e1e6cc1ca452dbc33caf87e'/>
<id>urn:sha1:f079fc11f28e6e2e6e1e6cc1ca452dbc33caf87e</id>
<content type='text'>
commit 2fe2f378dd45847d2643638c07a7658822087836 upstream.

The array ib_mad_mgmt_class_table.method_table has MAX_MGMT_CLASS
(80) elements. Hence compare the array index with that value instead
of with IB_MGMT_MAX_METHODS (128). This patch avoids that Coverity
reports the following:

Overrunning array class-&gt;method_table of 80 8-byte elements at element index 127 (byte offset 1016) using index convert_mgmt_class(mad_hdr-&gt;mgmt_class) (which evaluates to 127).

Fixes: commit b7ab0b19a85f ("IB/mad: Verify mgmt class in received MADs")
Signed-off-by: Bart Van Assche &lt;bart.vanassche@sandisk.com&gt;
Cc: Sean Hefty &lt;sean.hefty@intel.com&gt;
Reviewed-by: Hal Rosenstock &lt;hal@mellanox.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>IB/mad: Fix indentation</title>
<updated>2016-06-06T23:36:21Z</updated>
<author>
<name>Bart Van Assche</name>
</author>
<published>2016-06-03T19:08:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2190d10de58101448b0ac360facc0d5166e3d30d'/>
<id>urn:sha1:2190d10de58101448b0ac360facc0d5166e3d30d</id>
<content type='text'>
Make indentation consistent. Detected by smatch.

Signed-off-by: Bart Van Assche &lt;bart.vanassche@sandisk.com&gt;
Cc: Hal Rosenstock &lt;hal@mellanox.com&gt;
Cc: Ira Weiny &lt;ira.weiny@intel.com&gt;
Reviewed-By: Ira Weiny &lt;ira.weiny@intel.com&gt;
Reviewed-by: Hal Rosenstock &lt;hal@mellanox.com&gt;
Reviewed-by: Sagi Grimberg &lt;sagi@grimberg.me&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/MAD: Integrate ib_mad module into ib_core module</title>
<updated>2016-05-24T18:40:13Z</updated>
<author>
<name>Mark Bloch</name>
</author>
<published>2016-05-19T14:12:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4c2cb4220431cbf92233dc12733ee8962abb9081'/>
<id>urn:sha1:4c2cb4220431cbf92233dc12733ee8962abb9081</id>
<content type='text'>
Consolidate ib_mad into ib_core, this commit eliminates
ib_mad.ko and makes it part of ib_core.ko

Signed-off-by: Mark Bloch &lt;markb@mellanox.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/mad: use CQ abstraction</title>
<updated>2016-01-19T20:25:45Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2016-01-06T06:46:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d53e11fdf0538a972ad4f1e5ec315d3e35c1aae9'/>
<id>urn:sha1:d53e11fdf0538a972ad4f1e5ec315d3e35c1aae9</id>
<content type='text'>
Remove the local workqueue to process mad completions and use the CQ API
instead.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Hal Rosenstock &lt;hal@mellanox.com&gt;
Reviewed-by: Ira Weiny &lt;ira.weiny@intel.com&gt;
Reviewed-by: Sagi Grimberg &lt;sagig@mellanox.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/mad: pass ib_mad_send_buf explicitly to the recv_handler</title>
<updated>2016-01-19T20:25:36Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2016-01-04T13:15:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=ca281265c02f342fed4927b4e98e377d9318881f'/>
<id>urn:sha1:ca281265c02f342fed4927b4e98e377d9318881f</id>
<content type='text'>
Stop abusing wr_id and just pass the parameter explicitly.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Hal Rosenstock &lt;hal@mellanox.com&gt;
Reviewed-by: Ira Weiny &lt;ira.weiny@intel.com&gt;
Reviewed-by: Sagi Grimberg &lt;sagig@mellanox.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/mad: Ensure fairness in ib_mad_completion_handler</title>
<updated>2015-12-24T05:17:30Z</updated>
<author>
<name>Dean Luick</name>
</author>
<published>2015-12-10T21:52:30Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0d6ed314de18b65a8063cbed450a2ca0c6a16c52'/>
<id>urn:sha1:0d6ed314de18b65a8063cbed450a2ca0c6a16c52</id>
<content type='text'>
It was found that when a process was rapidly sending MADs other processes could
be hung in their unregister calls.

This would happen when process A was injecting packets fast enough that the
single threaded workqueue was never exiting ib_mad_completion_handler.
Therefore when process B called flush_workqueue via the unregister call it
would hang until process A stopped sending MADs.

The fix is to periodically reschedule ib_mad_completion_handler after
processing a large number of completions.  The number of completions chosen was
decided based on the defaults for the recv queue size.  However, it was kept
fixed such that increasing those queue sizes would not adversely affect
fairness in the future.

Reviewed-by: Ira Weiny &lt;ira.weiny@intel.com&gt;
Signed-off-by: Dean Luick &lt;dean.luick@intel.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB/mad: Require CM send method for everything except ClassPortInfo</title>
<updated>2015-12-08T17:19:11Z</updated>
<author>
<name>Hal Rosenstock</name>
</author>
<published>2015-11-13T20:22:22Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=533708867dd6388f643f12c87465b59e732d729d'/>
<id>urn:sha1:533708867dd6388f643f12c87465b59e732d729d</id>
<content type='text'>
Receipt of CM MAD with other than the Send method for an attribute
other than the ClassPortInfo attribute is invalid.

CM attributes other than ClassPortInfo only use the send method.

The SRP initiator does not maintain a timeout policy for CM connect
requests relies on the CM layer to do that. The result was that
the SRP initiator hung as the connect request never completed.

A new SRP target has been observed to respond to Send CM REQ
with GetResp of CM REQ with bad status. This is non conformant
with IBA spec but exposes a vulnerability in the current MAD/CM
code which will respond to the incoming GetResp of CM REQ as if
it was a valid incoming Send of CM REQ rather than tossing
this on the floor. It also causes the MAD layer not to
retransmit the original REQ even though it has not received a REP.

Reviewed-by: Sagi Grimberg &lt;sagig@mellanox.com&gt;
Signed-off-by: Hal Rosenstock &lt;hal@mellanox.com&gt;
Reviewed-by: Ira Weiny &lt;ira.weiny@intel.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'wr-cleanup' into k.o/for-4.4</title>
<updated>2015-10-29T02:23:34Z</updated>
<author>
<name>Doug Ledford</name>
</author>
<published>2015-10-29T02:23:34Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=63e8790d39a2d7c9a0ebeab987a6033d184bc6ba'/>
<id>urn:sha1:63e8790d39a2d7c9a0ebeab987a6033d184bc6ba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>IB/core: Add netdev and gid attributes paramteres to cache</title>
<updated>2015-10-22T03:48:17Z</updated>
<author>
<name>Matan Barak</name>
</author>
<published>2015-10-15T15:38:45Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=55ee3ab2e49a9ead850722ef47698243dd226d16'/>
<id>urn:sha1:55ee3ab2e49a9ead850722ef47698243dd226d16</id>
<content type='text'>
Adding an ability to query the IB cache by a netdev and get the
attributes of a GID. These parameters are necessary in order to
successfully resolve the required GID (when the netdevice is known)
and get the Ethernet L2 attributes from a GID.

Signed-off-by: Matan Barak &lt;matanb@mellanox.com&gt;
Reviewed-By: Devesh Sharma &lt;devesh.sharma@avagotech.com&gt;
Signed-off-by: Doug Ledford &lt;dledford@redhat.com&gt;
</content>
</entry>
<entry>
<title>IB: split struct ib_send_wr</title>
<updated>2015-10-08T10:09:10Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2015-10-08T08:16:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e622f2f4ad2142d2a613a57fb85f8cf737935ef5'/>
<id>urn:sha1:e622f2f4ad2142d2a613a57fb85f8cf737935ef5</id>
<content type='text'>
This patch split up struct ib_send_wr so that all non-trivial verbs
use their own structure which embedds struct ib_send_wr.  This dramaticly
shrinks the size of a WR for most common operations:

sizeof(struct ib_send_wr) (old):	96

sizeof(struct ib_send_wr):		48
sizeof(struct ib_rdma_wr):		64
sizeof(struct ib_atomic_wr):		96
sizeof(struct ib_ud_wr):		88
sizeof(struct ib_fast_reg_wr):		88
sizeof(struct ib_bind_mw_wr):		96
sizeof(struct ib_sig_handover_wr):	80

And with Sagi's pending MR rework the fast registration WR will also be
down to a reasonable size:

sizeof(struct ib_fastreg_wr):		64

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Reviewed-by: Bart Van Assche &lt;bart.vanassche@sandisk.com&gt; [srp, srpt]
Reviewed-by: Chuck Lever &lt;chuck.lever@oracle.com&gt; [sunrpc]
Tested-by: Haggai Eran &lt;haggaie@mellanox.com&gt;
Tested-by: Sagi Grimberg &lt;sagig@mellanox.com&gt;
Tested-by: Steve Wise &lt;swise@opengridcomputing.com&gt;
</content>
</entry>
</feed>
