Re: [Patch net-next v3 2/3] bridge: only expire the mdb entry when query is received
From: Herbert Xu <herbert@gondor.apana.org.au>
Date: 2013-05-03 04:01:08
On Fri, May 03, 2013 at 11:50:22AM +0800, Cong Wang wrote:
On Thu, 2013-05-02 at 09:59 +0800, Herbert Xu wrote:quoted
On Tue, Apr 30, 2013 at 03:10:18PM +0800, Cong Wang wrote:quoted
@@ -1275,7 +1277,7 @@ static void br_multicast_leave_group(struct net_bridge *br, br->multicast_last_member_interval; if (!port) { - if (mp->mglist && + if (mp->mglist && mp->timer_armed && (timer_pending(&mp->timer) ? time_after(mp->timer.expires, time) : try_to_del_timer_sync(&mp->timer) >= 0)) {This whole section of code should now be removed since we're now only arming the timer in response to a query to that group. Of course if we were the querier and sent out a query here then you'd need to simulate the reception of a query.Hmm, this piece of code is checking if bridge itself is in the mdb entry and if it just receives a leave, which seems still necessary... What am I missing?
I think I quoted the wrong hunk in the patch, I meant the code that arms the timer should no longer be in the leave_group function unless we just sent a query ourselves (and in that case the expiration should also be adjusted accordingly). Cheers, -- Email: Herbert Xu [off-list ref] Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt