]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commit
bnxt_en: Improve multicast address setup logic.
authorMichael Chan <michael.chan@broadcom.com>
Fri, 26 Apr 2019 02:31:50 +0000 (22:31 -0400)
committerStefan Bader <stefan.bader@canonical.com>
Tue, 2 Jul 2019 10:07:53 +0000 (12:07 +0200)
commitd239bccb570ce81cd4a4d48d49ce67fa7b6e6299
tree5ab944de2445f605fd888491da7a4d868a0186c8
parentacb9bd6f9739dc12e55a28380d0bec7a1e8c2592
bnxt_en: Improve multicast address setup logic.

BugLink: https://bugs.launchpad.net/bugs/1832749
[ Upstream commit b4e30e8e7ea1d1e35ffd64ca46f7d9a7f227b4bf ]

The driver builds a list of multicast addresses and sends it to the
firmware when the driver's ndo_set_rx_mode() is called.  In rare
cases, the firmware can fail this call if internal resources to
add multicast addresses are exhausted.  In that case, we should
try the call again by setting the ALL_MCAST flag which is more
guaranteed to succeed.

Fixes: c0c050c58d84 ("bnxt_en: New Broadcom ethernet driver.")
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Connor Kuehl <connor.kuehl@canonical.com>
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
drivers/net/ethernet/broadcom/bnxt/bnxt.c