Re: [PATCH v2] net: r8169: Disable multicast filter for RTL_GIGA_MAC_VER_46

From: Heiner Kallweit
Date: Sat Oct 28 2023 - 04:06:38 EST


On 27.10.2023 23:50, Patrick Thompson wrote:
> Hello Heiner,
>
> I haven't heard back from realtek about the possibility that this
> affects other MAC_VERs. Do you think it's acceptable to merge this
> patch for now and if/when we hear back from realtek I can adjust the
> function again?
>
Fine with me.
Would be nice if mc filtering could be switched on/off via ethtool,
because now we have to disable mc filtering for all the unaffected
users too.

> Thank you,
> Patrick
>
Heiner

> On Fri, Oct 27, 2023 at 5:31 PM Patrick Thompson <ptf@xxxxxxxxxx> wrote:
>>
>> MAC_VER_46 ethernet adapters fail to detect eapol packets unless
>> allmulti is enabled. Add exception for VER_46 in the same way VER_35
>> has an exception.
>>
>> Fixes: 6e1d0b898818 ("r8169:add support for RTL8168H and RTL8107E")
>> Signed-off-by: Patrick Thompson <ptf@xxxxxxxxxx>
>> ---
>>
>> Changes in v2:
>> - add Fixes tag
>> - add net annotation
>> - update description
>>
>> drivers/net/ethernet/realtek/r8169_main.c | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/net/ethernet/realtek/r8169_main.c b/drivers/net/ethernet/realtek/r8169_main.c
>> index 361b90007148b..a775090650e3a 100644
>> --- a/drivers/net/ethernet/realtek/r8169_main.c
>> +++ b/drivers/net/ethernet/realtek/r8169_main.c
>> @@ -2584,7 +2584,8 @@ static void rtl_set_rx_mode(struct net_device *dev)
>> rx_mode |= AcceptAllPhys;
>> } else if (netdev_mc_count(dev) > MC_FILTER_LIMIT ||
>> dev->flags & IFF_ALLMULTI ||
>> - tp->mac_version == RTL_GIGA_MAC_VER_35) {
>> + tp->mac_version == RTL_GIGA_MAC_VER_35 ||
>> + tp->mac_version == RTL_GIGA_MAC_VER_46) {
>> /* accept all multicasts */
>> } else if (netdev_mc_empty(dev)) {
>> rx_mode &= ~AcceptMulticast;
>> --
>> 2.42.0.820.g83a721a137-goog
>>