<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/include/linux/qed, branch v4.19.294</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v4.19.294</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v4.19.294'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2020-07-01T03:17:12Z</updated>
<entry>
<title>net: qed: fix left elements count calculation</title>
<updated>2020-07-01T03:17:12Z</updated>
<author>
<name>Alexander Lobakin</name>
<email>alobakin@marvell.com</email>
</author>
<published>2020-06-23T13:51:29Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=d10d0539c52e71f03f227c88a3225b052273dc0a'/>
<id>urn:sha1:d10d0539c52e71f03f227c88a3225b052273dc0a</id>
<content type='text'>
[ Upstream commit 97dd1abd026ae4e6a82fa68645928404ad483409 ]

qed_chain_get_element_left{,_u32} returned 0 when the difference
between producer and consumer page count was equal to the total
page count.
Fix this by conditional expanding of producer value (vs
unconditional). This allowed to eliminate normalizaton against
total page count, which was the cause of this bug.

Misc: replace open-coded constants with common defines.

Fixes: a91eb52abb50 ("qed: Revisit chain implementation")
Signed-off-by: Alexander Lobakin &lt;alobakin@marvell.com&gt;
Signed-off-by: Igor Russkikh &lt;irusskikh@marvell.com&gt;
Signed-off-by: Michal Kalderon &lt;michal.kalderon@marvell.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>qed: Fix use after free in qed_chain_free</title>
<updated>2020-05-02T15:26:00Z</updated>
<author>
<name>Yuval Basson</name>
<email>ybason@marvell.com</email>
</author>
<published>2020-03-29T17:32:49Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=64325c2855567e9324c3dff7bf343d7faa2f8e95'/>
<id>urn:sha1:64325c2855567e9324c3dff7bf343d7faa2f8e95</id>
<content type='text'>
commit 8063f761cd7c17fc1d0018728936e0c33a25388a upstream.

The qed_chain data structure was modified in
commit 1a4a69751f4d ("qed: Chain support for external PBL") to support
receiving an external pbl (due to iWARP FW requirements).
The pages pointed to by the pbl are allocated in qed_chain_alloc
and their virtual address are stored in an virtual addresses array to
enable accessing and freeing the data. The physical addresses however
weren't stored and were accessed directly from the external-pbl
during free.

Destroy-qp flow, leads to freeing the external pbl before the chain is
freed, when the chain is freed it tries accessing the already freed
external pbl, leading to a use-after-free. Therefore we need to store
the physical addresses in additional to the virtual addresses in a
new data structure.

Fixes: 1a4a69751f4d ("qed: Chain support for external PBL")
Signed-off-by: Michal Kalderon &lt;mkalderon@marvell.com&gt;
Signed-off-by: Yuval Bason &lt;ybason@marvell.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>qed: Fix qed_chain_set_prod() for PBL chains with non power of 2 page count</title>
<updated>2019-02-27T09:08:52Z</updated>
<author>
<name>Denis Bolotin</name>
<email>dbolotin@marvell.com</email>
</author>
<published>2019-01-03T10:02:39Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=1fa0cf450c8805dd32693fc8d55000d8e7bda4a1'/>
<id>urn:sha1:1fa0cf450c8805dd32693fc8d55000d8e7bda4a1</id>
<content type='text'>
[ Upstream commit 2d533a9287f2011632977e87ce2783f4c689c984 ]

In PBL chains with non power of 2 page count, the producer is not at the
beginning of the chain when index is 0 after a wrap. Therefore, after the
producer index wrap around, page index should be calculated more carefully.

Signed-off-by: Denis Bolotin &lt;dbolotin@marvell.com&gt;
Signed-off-by: Ariel Elior &lt;aelior@marvell.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;sashal@kernel.org&gt;
</content>
</entry>
<entry>
<title>qed/qede: Multi CoS support.</title>
<updated>2018-08-09T21:05:30Z</updated>
<author>
<name>Manish Chopra</name>
<email>manish.chopra@cavium.com</email>
</author>
<published>2018-08-09T18:13:49Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=5e7baf0fcb2a3aef7329f3c7543d4695a46bd321'/>
<id>urn:sha1:5e7baf0fcb2a3aef7329f3c7543d4695a46bd321</id>
<content type='text'>
This patch adds support for tc mqprio offload,
using this different traffic classes on the adapter
can be utilized based on configured priority to tc map.

For example -

tc qdisc add dev eth0 root mqprio num_tc 4 map 0 1 2 3

This will cause SKBs with priority 0,1,2,3 to transmit
over tc 0,1,2,3 hardware queues respectively.

Signed-off-by: Manish Chopra &lt;manish.chopra@cavium.com&gt;
Signed-off-by: Ariel Elior &lt;ariel.elior@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>qed: Add qed APIs for PHY module query.</title>
<updated>2018-07-20T06:35:37Z</updated>
<author>
<name>Sudarsana Reddy Kalluru</name>
<email>sudarsana.kalluru@cavium.com</email>
</author>
<published>2018-07-18T13:27:22Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b51dab46c6adfbb7e80cd0f59ae17b8a30d94b1a'/>
<id>urn:sha1:b51dab46c6adfbb7e80cd0f59ae17b8a30d94b1a</id>
<content type='text'>
This patch adds qed APIs for reading the PHY module.

Signed-off-by: Sudarsana Reddy Kalluru &lt;Sudarsana.Kalluru@cavium.com&gt;
Signed-off-by: Ariel Elior &lt;ariel.elior@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>qed*: Utilize FW 8.37.2.0</title>
<updated>2018-06-05T14:48:09Z</updated>
<author>
<name>Michal Kalderon</name>
<email>Michal.Kalderon@cavium.com</email>
</author>
<published>2018-06-05T10:11:16Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=d52c89f120de849575f6b2e5948038f2be12ce6f'/>
<id>urn:sha1:d52c89f120de849575f6b2e5948038f2be12ce6f</id>
<content type='text'>
This FW contains several fixes and features.

RDMA
- Several modifications and fixes for Memory Windows
- drop vlan and tcp timestamp from mss calculation in driver for
  this FW
- Fix SQ completion flow when local ack timeout is infinite
- Modifications in t10dif support

ETH
- Fix aRFS for tunneled traffic without inner IP.
- Fix chip configuration which may fail under heavy traffic conditions.
- Support receiving any-VNI in VXLAN and GENEVE RX classification.

iSCSI / FcoE
- Fix iSCSI recovery flow
- Drop vlan and tcp timestamp from mss calc for fw 8.37.2.0

Misc
- Several registers (split registers) won't read correctly with
  ethtool -d

Signed-off-by: Ariel Elior &lt;Ariel.Elior@cavium.com&gt;
Signed-off-by: Manish Rangankar &lt;manish.rangankar@cavium.com&gt;
Signed-off-by: Michal Kalderon &lt;Michal.Kalderon@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>qed: Add srq core support for RoCE and iWARP</title>
<updated>2018-06-04T21:09:54Z</updated>
<author>
<name>Yuval Bason</name>
<email>yuval.bason@cavium.com</email>
</author>
<published>2018-06-03T16:13:07Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=39dbc646fd2c67ee9b71450ce172cbd714d4e7fb'/>
<id>urn:sha1:39dbc646fd2c67ee9b71450ce172cbd714d4e7fb</id>
<content type='text'>
This patch adds support for configuring SRQ and provides the necessary
APIs for rdma upper layer driver (qedr) to enable the SRQ feature.

Signed-off-by: Michal Kalderon &lt;michal.kalderon@cavium.com&gt;
Signed-off-by: Ariel Elior &lt;ariel.elior@cavium.com&gt;
Signed-off-by: Yuval Bason &lt;yuval.bason@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>qed*: Add link change count value to ethtool statistics display.</title>
<updated>2018-05-31T18:02:13Z</updated>
<author>
<name>Sudarsana Reddy Kalluru</name>
<email>sudarsana.kalluru@cavium.com</email>
</author>
<published>2018-05-29T09:31:24Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=32d26a685c1802a0e485bd674e7dd038e88019f7'/>
<id>urn:sha1:32d26a685c1802a0e485bd674e7dd038e88019f7</id>
<content type='text'>
This patch adds driver changes for capturing the link change count in
ethtool statistics display.

Please consider applying this to "net-next".

Signed-off-by: Sudarsana Reddy Kalluru &lt;Sudarsana.Kalluru@cavium.com&gt;
Signed-off-by: Ariel Elior &lt;ariel.elior@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>qed*: Support drop action classification</title>
<updated>2018-05-25T20:10:42Z</updated>
<author>
<name>Manish Chopra</name>
<email>manish.chopra@cavium.com</email>
</author>
<published>2018-05-24T16:54:53Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=608e00d0a2eb53079c55dc9c14d8711bbb3a4390'/>
<id>urn:sha1:608e00d0a2eb53079c55dc9c14d8711bbb3a4390</id>
<content type='text'>
With this patch, User can configure for the supported
flows to be dropped. Added a stat "gft_filter_drop"
as well to be populated in ethtool for the dropped flows.

For example -

ethtool -N p5p1 flow-type udp4 dst-port 8000 action -1
ethtool -N p5p1 flow-type tcp4 scr-ip 192.168.8.1 action -1

Signed-off-by: Manish Chopra &lt;manish.chopra@cavium.com&gt;
Signed-off-by: Shahed Shaikh &lt;shahed.shaikh@cavium.com&gt;
Signed-off-by: Ariel Elior &lt;ariel.elior@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>qed*: Support other classification modes.</title>
<updated>2018-05-25T20:10:42Z</updated>
<author>
<name>Manish Chopra</name>
<email>manish.chopra@cavium.com</email>
</author>
<published>2018-05-24T16:54:51Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=3893fc62b1769db3ef160f7f1e36d3db754497ee'/>
<id>urn:sha1:3893fc62b1769db3ef160f7f1e36d3db754497ee</id>
<content type='text'>
Currently, driver supports flow classification to PF
receive queues based on TCP/UDP 4 tuples [src_ip, dst_ip,
src_port, dst_port] only.

This patch enables to configure different flow profiles
[For example - only UDP dest port or src_ip based] on the
adapter so that classification can be done according to
just those fields as well. Although, at a time just one
type of flow configuration is supported due to limited
number of flow profiles available on the device.

For example -

ethtool -N enp7s0f0 flow-type udp4 dst-port 45762 action 2
ethtool -N enp7s0f0 flow-type tcp4 src-ip 192.16.4.10 action 1
ethtool -N enp7s0f0 flow-type udp6 dst-port 45762 action 3

Signed-off-by: Manish Chopra &lt;manish.chopra@cavium.com&gt;
Signed-off-by: Shahed Shaikh &lt;shahed.shaikh@cavium.com&gt;
Signed-off-by: Ariel Elior &lt;ariel.elior@cavium.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
