]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commit
mvpp2: fix multicast address filter
authorMikulas Patocka <mpatocka@redhat.com>
Sun, 11 Feb 2018 23:10:28 +0000 (18:10 -0500)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Wed, 4 Apr 2018 09:53:26 +0000 (11:53 +0200)
commit454f00d85c19590e1022b5c0db5fc2f9352571a4
tree708de4befee80c568b826a380db46bdcbe7686db
parent0f33e78f09b0955dcea5c09be2e7b2813b0d57ce
mvpp2: fix multicast address filter

BugLink: http://bugs.launchpad.net/bugs/1756860
commit 7ac8ff95f48cbfa609a060fd6a1e361dd62feeb3 upstream.

IPv6 doesn't work on the MacchiatoBIN board. It is caused by broken
multicast address filter in the mvpp2 driver.

The driver loads doesn't load any multicast entries if "allmulti" is not
set. This condition should be reversed.

The condition !netdev_mc_empty(dev) is useless (because
netdev_for_each_mc_addr is nop if the list is empty).

This patch also fixes a possible overflow of the multicast list - if
mvpp2_prs_mac_da_accept fails, we set the allmulti flag and retry.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Cc: stable@vger.kernel.org
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Juerg Haefliger <juergh@canonical.com>
Signed-off-by: Kleber Sacilotto de Souza <kleber.souza@canonical.com>
drivers/net/ethernet/marvell/mvpp2.c