<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/drivers/net/ethernet/emulex, branch v4.9.127</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>be2net: restore properly promisc mode after queues reconfiguration</title>
<updated>2018-01-31T11:55:55+00:00</updated>
<author>
<name>Ivan Vecera</name>
<email>cera@cera.cz</email>
</author>
<published>2018-01-19T19:23:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1711ba166e5f7148bc41b5e24f7f282ffc055515'/>
<id>1711ba166e5f7148bc41b5e24f7f282ffc055515</id>
<content type='text'>
[ Upstream commit 52acf06451930eb4cefabd5ecea56e2d46c32f76 ]

The commit 622190669403 ("be2net: Request RSS capability of Rx interface
depending on number of Rx rings") modified be_update_queues() so the
IFACE (HW representation of the netdevice) is destroyed and then
re-created. This causes a regression because potential promiscuous mode
is not restored properly during be_open() because the driver thinks
that the HW has promiscuous mode already enabled.

Note that Lancer is not affected by this bug because RX-filter flags are
disabled during be_close() for this chipset.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;

Fixes: 622190669403 ("be2net: Request RSS capability of Rx interface depending on number of Rx rings")
Signed-off-by: Ivan Vecera &lt;ivecera@redhat.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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 52acf06451930eb4cefabd5ecea56e2d46c32f76 ]

The commit 622190669403 ("be2net: Request RSS capability of Rx interface
depending on number of Rx rings") modified be_update_queues() so the
IFACE (HW representation of the netdevice) is destroyed and then
re-created. This causes a regression because potential promiscuous mode
is not restored properly during be_open() because the driver thinks
that the HW has promiscuous mode already enabled.

Note that Lancer is not affected by this bug because RX-filter flags are
disabled during be_close() for this chipset.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;

Fixes: 622190669403 ("be2net: Request RSS capability of Rx interface depending on number of Rx rings")
Signed-off-by: Ivan Vecera &lt;ivecera@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>be2net: fix initial MAC setting</title>
<updated>2017-12-09T21:01:54+00:00</updated>
<author>
<name>Ivan Vecera</name>
<email>cera@cera.cz</email>
</author>
<published>2017-01-31T19:01:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=6129fd98822520dccf60389a4e2ef5d0148aad78'/>
<id>6129fd98822520dccf60389a4e2ef5d0148aad78</id>
<content type='text'>
[ Upstream commit 4993b39ab04b083ff6ee1147e7e7f120feb6bf7f ]

Recent commit 34393529163a ("be2net: fix MAC addr setting on privileged
BE3 VFs") allows privileged BE3 VFs to set its MAC address during
initialization. Although the initial MAC for such VFs is already
programmed by parent PF the subsequent setting performed by VF is OK,
but in certain cases (after fresh boot) this command in VF can fail.

The MAC should be initialized only when:
1) no MAC is programmed (always except BE3 VFs during first init)
2) programmed MAC is different from requested (e.g. MAC is set when
   interface is down). In this case the initial MAC programmed by PF
   needs to be deleted.

The adapter-&gt;dev_mac contains MAC address currently programmed in HW so
it should be zeroed when the MAC is deleted from HW and should not be
filled when MAC is set when interface is down in be_mac_addr_set() as
no programming is performed in this case.

Example of failure without the fix (immediately after fresh boot):

# ip link set eth0 up  &lt;- eth0 is BE3 PF
be2net 0000:01:00.0 eth0: Link is Up

# echo 1 &gt; /sys/class/net/eth0/device/sriov_numvfs  &lt;- Create 1 VF
...
be2net 0000:01:04.0: Emulex OneConnect(be3): VF  port 0

# ip link set eth8 up  &lt;- eth8 is created privileged VF
be2net 0000:01:04.0: opcode 59-1 failed:status 1-76
RTNETLINK answers: Input/output error

# echo 0 &gt; /sys/class/net/eth0/device/sriov_numvfs  &lt;- Delete VF
iommu: Removing device 0000:01:04.0 from group 33
...

# echo 1 &gt; /sys/class/net/eth0/device/sriov_numvfs  &lt;- Create it again
iommu: Removing device 0000:01:04.0 from group 33
...

# ip link set eth8 up
be2net 0000:01:04.0 eth8: Link is Up

Initialization is now OK.

v2 - Corrected the comment and condition check suggested by Suresh &amp; Harsha

Fixes: 34393529163a ("be2net: fix MAC addr setting on privileged BE3 VFs")
Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Acked-by: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 4993b39ab04b083ff6ee1147e7e7f120feb6bf7f ]

Recent commit 34393529163a ("be2net: fix MAC addr setting on privileged
BE3 VFs") allows privileged BE3 VFs to set its MAC address during
initialization. Although the initial MAC for such VFs is already
programmed by parent PF the subsequent setting performed by VF is OK,
but in certain cases (after fresh boot) this command in VF can fail.

The MAC should be initialized only when:
1) no MAC is programmed (always except BE3 VFs during first init)
2) programmed MAC is different from requested (e.g. MAC is set when
   interface is down). In this case the initial MAC programmed by PF
   needs to be deleted.

The adapter-&gt;dev_mac contains MAC address currently programmed in HW so
it should be zeroed when the MAC is deleted from HW and should not be
filled when MAC is set when interface is down in be_mac_addr_set() as
no programming is performed in this case.

Example of failure without the fix (immediately after fresh boot):

# ip link set eth0 up  &lt;- eth0 is BE3 PF
be2net 0000:01:00.0 eth0: Link is Up

# echo 1 &gt; /sys/class/net/eth0/device/sriov_numvfs  &lt;- Create 1 VF
...
be2net 0000:01:04.0: Emulex OneConnect(be3): VF  port 0

# ip link set eth8 up  &lt;- eth8 is created privileged VF
be2net 0000:01:04.0: opcode 59-1 failed:status 1-76
RTNETLINK answers: Input/output error

# echo 0 &gt; /sys/class/net/eth0/device/sriov_numvfs  &lt;- Delete VF
iommu: Removing device 0000:01:04.0 from group 33
...

# echo 1 &gt; /sys/class/net/eth0/device/sriov_numvfs  &lt;- Create it again
iommu: Removing device 0000:01:04.0 from group 33
...

# ip link set eth8 up
be2net 0000:01:04.0 eth8: Link is Up

Initialization is now OK.

v2 - Corrected the comment and condition check suggested by Suresh &amp; Harsha

Fixes: 34393529163a ("be2net: fix MAC addr setting on privileged BE3 VFs")
Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Acked-by: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>be2net: fix unicast list filling</title>
<updated>2017-12-09T21:01:51+00:00</updated>
<author>
<name>Ivan Vecera</name>
<email>cera@cera.cz</email>
</author>
<published>2017-01-06T20:59:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=e3a252a9924cb80678092e841cada6c48773eef2'/>
<id>e3a252a9924cb80678092e841cada6c48773eef2</id>
<content type='text'>
[ Upstream commit 6052cd1af86f9833b6b0b60d5d4787c4a06d65ea ]

The adapter-&gt;pmac_id[0] item is used for primary MAC address but
this is not true for adapter-&gt;uc_list[0] as is assumed in
be_set_uc_list(). There are N UC addresses copied first from net_device
to adapter-&gt;uc_list[1..N] and then N UC addresses from
adapter-&gt;uc_list[0..N-1] are sent to HW. So the last UC address is never
stored into HW and address 00:00:00:00;00:00 (from uc_list[0]) is used
instead.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Fixes: b717241 be2net: replace polling with sleeping in the FW completion path
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 6052cd1af86f9833b6b0b60d5d4787c4a06d65ea ]

The adapter-&gt;pmac_id[0] item is used for primary MAC address but
this is not true for adapter-&gt;uc_list[0] as is assumed in
be_set_uc_list(). There are N UC addresses copied first from net_device
to adapter-&gt;uc_list[1..N] and then N UC addresses from
adapter-&gt;uc_list[0..N-1] are sent to HW. So the last UC address is never
stored into HW and address 00:00:00:00;00:00 (from uc_list[0]) is used
instead.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Fixes: b717241 be2net: replace polling with sleeping in the FW completion path
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>be2net: fix accesses to unicast list</title>
<updated>2017-12-09T21:01:51+00:00</updated>
<author>
<name>Ivan Vecera</name>
<email>cera@cera.cz</email>
</author>
<published>2017-01-06T19:30:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=b4c3022e673a0c368e16d296691719a6f920ad74'/>
<id>b4c3022e673a0c368e16d296691719a6f920ad74</id>
<content type='text'>
[ Upstream commit 1d0f110a2c6c4bca3dbcc4b0e27f1e3dc2d44a2c ]

Commit 988d44b "be2net: Avoid redundant addition of mac address in HW"
introduced be_dev_mac_add &amp; be_uc_mac_add helpers that incorrectly
access adapter-&gt;uc_list as an array of bytes instead of an array of
be_eth_addr. Consequently NIC is not filled with valid data so unicast
filtering is broken.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Fixes: 988d44b be2net: Avoid redundant addition of mac address in HW
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 1d0f110a2c6c4bca3dbcc4b0e27f1e3dc2d44a2c ]

Commit 988d44b "be2net: Avoid redundant addition of mac address in HW"
introduced be_dev_mac_add &amp; be_uc_mac_add helpers that incorrectly
access adapter-&gt;uc_list as an array of bytes instead of an array of
be_eth_addr. Consequently NIC is not filled with valid data so unicast
filtering is broken.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Fixes: 988d44b be2net: Avoid redundant addition of mac address in HW
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>benet: stricter vxlan offloading check in be_features_check</title>
<updated>2017-08-07T01:59:47+00:00</updated>
<author>
<name>Sabrina Dubroca</name>
<email>sd@queasysnail.net</email>
</author>
<published>2017-01-03T15:26:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=49fc90b443c71b3cdbfaf15c0c15fc7e3ffc5731'/>
<id>49fc90b443c71b3cdbfaf15c0c15fc7e3ffc5731</id>
<content type='text'>
[ Upstream commit 096de2f83ebc8e0404c5b7e847a4abd27b9739da ]

When VXLAN offloading is enabled, be_features_check() tries to check if
an encapsulated packet is indeed a VXLAN packet. The check is not strict
enough, and considers any UDP-encapsulated ethernet frame with a 8-byte
tunnel header as being VXLAN. Unfortunately, both GENEVE and VXLAN-GPE
have a 8-byte header, so they get through this check.

Force the UDP destination port to be the one that has been offloaded to
hardware.

Without this, GENEVE-encapsulated packets can end up having an incorrect
checksum when both a GENEVE and a VXLAN (offloaded) tunnel are
configured.

This is similar to commit a547224dceed ("mlx4e: Do not attempt to
offload VXLAN ports that are unrecognized").

Signed-off-by: Sabrina Dubroca &lt;sd@queasysnail.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 096de2f83ebc8e0404c5b7e847a4abd27b9739da ]

When VXLAN offloading is enabled, be_features_check() tries to check if
an encapsulated packet is indeed a VXLAN packet. The check is not strict
enough, and considers any UDP-encapsulated ethernet frame with a 8-byte
tunnel header as being VXLAN. Unfortunately, both GENEVE and VXLAN-GPE
have a 8-byte header, so they get through this check.

Force the UDP destination port to be the one that has been offloaded to
hardware.

Without this, GENEVE-encapsulated packets can end up having an incorrect
checksum when both a GENEVE and a VXLAN (offloaded) tunnel are
configured.

This is similar to commit a547224dceed ("mlx4e: Do not attempt to
offload VXLAN ports that are unrecognized").

Signed-off-by: Sabrina Dubroca &lt;sd@queasysnail.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>be2net: fix MAC addr setting on privileged BE3 VFs</title>
<updated>2017-07-05T12:40:27+00:00</updated>
<author>
<name>Ivan Vecera</name>
<email>cera@cera.cz</email>
</author>
<published>2017-01-13T21:38:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=cc439964fab1a58f5f7d9041845228bdd6ddfa6c'/>
<id>cc439964fab1a58f5f7d9041845228bdd6ddfa6c</id>
<content type='text'>
[ Upstream commit 34393529163af7163ef8459808e3cf2af7db7f16 ]

During interface opening MAC address stored in netdev-&gt;dev_addr is
programmed in the HW with exception of BE3 VFs where the initial
MAC is programmed by parent PF. This is OK when MAC address is not
changed when an interfaces is down. In this case the requested MAC is
stored to netdev-&gt;dev_addr and later is stored into HW during opening.
But this is not done for all BE3 VFs so the NIC HW does not know
anything about this change and all traffic is filtered.

This is the case of bonding if fail_over_mac == 0 where the MACs of
the slaves are changed while they are down.

The be2net behavior is too restrictive because if a BE3 VF has
the FILTMGMT privilege then it is able to modify its MAC without
any restriction.

To solve the described problem the driver should take care about these
privileged BE3 VFs so the MAC is programmed during opening. And by
contrast unpriviled BE3 VFs should not be allowed to change its MAC
in any case.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 34393529163af7163ef8459808e3cf2af7db7f16 ]

During interface opening MAC address stored in netdev-&gt;dev_addr is
programmed in the HW with exception of BE3 VFs where the initial
MAC is programmed by parent PF. This is OK when MAC address is not
changed when an interfaces is down. In this case the requested MAC is
stored to netdev-&gt;dev_addr and later is stored into HW during opening.
But this is not done for all BE3 VFs so the NIC HW does not know
anything about this change and all traffic is filtered.

This is the case of bonding if fail_over_mac == 0 where the MACs of
the slaves are changed while they are down.

The be2net behavior is too restrictive because if a BE3 VF has
the FILTMGMT privilege then it is able to modify its MAC without
any restriction.

To solve the described problem the driver should take care about these
privileged BE3 VFs so the MAC is programmed during opening. And by
contrast unpriviled BE3 VFs should not be allowed to change its MAC
in any case.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>be2net: don't delete MAC on close on unprivileged BE3 VFs</title>
<updated>2017-07-05T12:40:26+00:00</updated>
<author>
<name>Ivan Vecera</name>
<email>cera@cera.cz</email>
</author>
<published>2017-01-13T21:38:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=02434def6fd0df57a5c4b1309b7d16f985234a7d'/>
<id>02434def6fd0df57a5c4b1309b7d16f985234a7d</id>
<content type='text'>
[ Upstream commit 6d928ae590c8d58cfd5cca997d54394de139cbb7 ]

BE3 VFs without FILTMGMT privilege are not allowed to modify its MAC,
VLAN table and UC/MC lists. So don't try to delete MAC on such VFs.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit 6d928ae590c8d58cfd5cca997d54394de139cbb7 ]

BE3 VFs without FILTMGMT privilege are not allowed to modify its MAC,
VLAN table and UC/MC lists. So don't try to delete MAC on such VFs.

Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>be2net: fix status check in be_cmd_pmac_add()</title>
<updated>2017-07-05T12:40:26+00:00</updated>
<author>
<name>Ivan Vecera</name>
<email>cera@cera.cz</email>
</author>
<published>2017-01-13T21:38:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=fa1dbf505aefe87cb3adbe279c3eaac087d5790d'/>
<id>fa1dbf505aefe87cb3adbe279c3eaac087d5790d</id>
<content type='text'>
[ Upstream commit fe68d8bfe59c561664aa87d827aa4b320eb08895 ]

Return value from be_mcc_notify_wait() contains a base completion status
together with an additional status. The base_status() macro need to be
used to access base status.

Fixes: e3a7ae2 be2net: Changing MAC Address of a VF was broken
Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit fe68d8bfe59c561664aa87d827aa4b320eb08895 ]

Return value from be_mcc_notify_wait() contains a base completion status
together with an additional status. The base_status() macro need to be
used to access base status.

Fixes: e3a7ae2 be2net: Changing MAC Address of a VF was broken
Cc: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
Cc: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
Cc: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
Cc: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Ivan Vecera &lt;cera@cera.cz&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Sasha Levin &lt;alexander.levin@verizon.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>be2net: Fix offload features for Q-in-Q packets</title>
<updated>2017-06-07T10:07:45+00:00</updated>
<author>
<name>Vlad Yasevich</name>
<email>vyasevich@gmail.com</email>
</author>
<published>2017-05-23T17:38:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9c6cfd5811bd53c4ef1800b768397d38c4790fbf'/>
<id>9c6cfd5811bd53c4ef1800b768397d38c4790fbf</id>
<content type='text'>
[ Upstream commit cc6e9de62a7f84c9293a2ea41bc412b55bb46e85 ]

At least some of the be2net cards do not seem to be capabled
of performing checksum offload computions on Q-in-Q packets.
In these case, the recevied checksum on the remote is invalid
and TCP syn packets are dropped.

This patch adds a call to check disbled acceleration features
on Q-in-Q tagged traffic.

CC: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
CC: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
CC: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
CC: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Vladislav Yasevich &lt;vyasevic@redhat.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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[ Upstream commit cc6e9de62a7f84c9293a2ea41bc412b55bb46e85 ]

At least some of the be2net cards do not seem to be capabled
of performing checksum offload computions on Q-in-Q packets.
In these case, the recevied checksum on the remote is invalid
and TCP syn packets are dropped.

This patch adds a call to check disbled acceleration features
on Q-in-Q tagged traffic.

CC: Sathya Perla &lt;sathya.perla@broadcom.com&gt;
CC: Ajit Khaparde &lt;ajit.khaparde@broadcom.com&gt;
CC: Sriharsha Basavapatna &lt;sriharsha.basavapatna@broadcom.com&gt;
CC: Somnath Kotur &lt;somnath.kotur@broadcom.com&gt;
Signed-off-by: Vladislav Yasevich &lt;vyasevic@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>be2net: Add DEVSEC privilege to SET_HSW_CONFIG command.</title>
<updated>2016-12-06T16:39:41+00:00</updated>
<author>
<name>Venkat Duvvuru</name>
<email>venkatkumar.duvvuru@broadcom.com</email>
</author>
<published>2016-12-06T05:33:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=d14584d91976c42c7178164665c4959495740939'/>
<id>d14584d91976c42c7178164665c4959495740939</id>
<content type='text'>
OPCODE_COMMON_GET_FN_PRIVILEGES is returning only DEVSEC
privilege (Unrestricted Administrative Privilege) for Lancer NIC functions.
So, driver is failing SET_HSW_CONFIG command, as DEVSEC privilege was not
set in the privilege bitmap. This patch fixes the problem by setting DEVSEC
privilege in SET_HSW_CONFIG’s privilege bitmap.

Signed-off-by: Venkat Duvvuru &lt;venkatkumar.duvvuru@broadcom.com&gt;
Signed-off-by: Suresh Reddy &lt;suresh.reddy@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
OPCODE_COMMON_GET_FN_PRIVILEGES is returning only DEVSEC
privilege (Unrestricted Administrative Privilege) for Lancer NIC functions.
So, driver is failing SET_HSW_CONFIG command, as DEVSEC privilege was not
set in the privilege bitmap. This patch fixes the problem by setting DEVSEC
privilege in SET_HSW_CONFIG’s privilege bitmap.

Signed-off-by: Venkat Duvvuru &lt;venkatkumar.duvvuru@broadcom.com&gt;
Signed-off-by: Suresh Reddy &lt;suresh.reddy@broadcom.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</pre>
</div>
</content>
</entry>
</feed>
