From mboxrd@z Thu Jan 1 00:00:00 1970 From: Florian Fainelli Subject: Re: [PATCH v3 net-next 0/5] IGMP snooping for local traffic Date: Tue, 7 Nov 2017 13:18:06 -0800 Message-ID: <112f2916-d2de-06c0-87b9-a6c49967bcdf@gmail.com> References: <1510010818-23223-1-git-send-email-andrew@lunn.ch> <87d14ut405.fsf@weeman.i-did-not-set--mail-host-address--so-tickle-me> <20171107174222.GA15028@lunn.ch> <87mv3y7y52.fsf@weeman.i-did-not-set--mail-host-address--so-tickle-me> <20171107210142.GA21784@lunn.ch> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: David Miller , netdev To: Andrew Lunn , Vivien Didelot Return-path: Received: from mail-qt0-f172.google.com ([209.85.216.172]:49231 "EHLO mail-qt0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933975AbdKGVSR (ORCPT ); Tue, 7 Nov 2017 16:18:17 -0500 Received: by mail-qt0-f172.google.com with SMTP id k31so840669qta.6 for ; Tue, 07 Nov 2017 13:18:17 -0800 (PST) In-Reply-To: <20171107210142.GA21784@lunn.ch> Content-Language: en-US Sender: netdev-owner@vger.kernel.org List-ID: On 11/07/2017 01:01 PM, Andrew Lunn wrote: >>> It is not quite as simple as that. Image: >>> >>> brctl addbr br0 >>> brctl addif br0 eth2 >>> brctl addif br0 lan0 > > Hi Vivien > > I will reply to your other points later. But another scenario to think > about. > > Take the above configuration. > > A join is received on eth2. The bridge makes switchdev calls. Your > idea would be it passes add MDB(eth2). > > Now an application performs a join on br0. The bridge does nothing > with switchdev. It already gets the frames it needs. > > eth2 leaves the group. The switch does nothing. It still needs the frames. > > The application leaves the group on br0. The bridge makes switchdev > calls to tell the hardware to stop sending it frames. With your > scheme, it would pass del MDB(br0). > > So we start it with eth2, stop it with br0. I think this makes it > clear, the interface name is not important. All we need is a bit, > which says is this a normal MDB request, or a host MDB request. I > encode this bit by having a different requests. Andrew, I am afraid you lost me here, I don't even understand the problem you are trying to describe :) What would be the rationale for differentiation "normal MDB requests" from "host MDB requests", how and why should we treat them differently? In a switch case, they all translate to programming a MDB entry for a given switch port, right? -- Florian