Date: Fri, 22 Oct 2021 10:50:12 GMT From: Peter Grehan <grehan@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Subject: git: 5a3eb6207a35 - main - igc: correctly update RCTL when changing multicast filters. Message-ID: <202110221050.19MAoC9V095475@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by grehan: URL: https://cgit.FreeBSD.org/src/commit/?id=5a3eb6207a353c3a18da8abcf00a2d75276dd29e commit 5a3eb6207a353c3a18da8abcf00a2d75276dd29e Author: Peter Grehan <grehan@FreeBSD.org> AuthorDate: 2021-10-11 17:49:01 +0000 Commit: Peter Grehan <grehan@FreeBSD.org> CommitDate: 2021-10-22 11:16:12 +0000 igc: correctly update RCTL when changing multicast filters. Fix clearing of bits in RCTL for the non-bpf/non-allmulti case. Update RCTL after modifying the multicast filter registers as per the Linux driver. This fixes LACP on igc interfaces, where incoming LACP multicasti control packets were being dropped. Reviewed by: kbowling Obtained from: Rubicon Communications, LLC ("Netgate") MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D32574 --- sys/dev/igc/if_igc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sys/dev/igc/if_igc.c b/sys/dev/igc/if_igc.c index 6d94a7c223c7..436493185d5c 100644 --- a/sys/dev/igc/if_igc.c +++ b/sys/dev/igc/if_igc.c @@ -1172,12 +1172,12 @@ igc_if_multi_set(if_ctx_t ctx) reg_rctl |= IGC_RCTL_MPE; reg_rctl &= ~IGC_RCTL_UPE; } else - reg_rctl = ~(IGC_RCTL_UPE | IGC_RCTL_MPE); - - IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); + reg_rctl &= ~(IGC_RCTL_UPE | IGC_RCTL_MPE); if (mcnt < MAX_NUM_MULTICAST_ADDRESSES) igc_update_mc_addr_list(&adapter->hw, mta, mcnt); + + IGC_WRITE_REG(&adapter->hw, IGC_RCTL, reg_rctl); } /*********************************************************************
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202110221050.19MAoC9V095475>