From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752382AbcF1MqG (ORCPT ); Tue, 28 Jun 2016 08:46:06 -0400 Received: from shards.monkeyblade.net ([149.20.54.216]:56460 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751949AbcF1MqE convert rfc822-to-8bit (ORCPT ); Tue, 28 Jun 2016 08:46:04 -0400 Date: Tue, 28 Jun 2016 08:04:42 -0400 (EDT) Message-Id: <20160628.080442.1941457943482109633.davem@davemloft.net> To: linus.luessing@c0d3.blue Cc: daniel@dd-wrt.com, bridge@lists.linux-foundation.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, stephen@networkplumber.org, uw@ocedo.com, ulrich.weber@sophos.com Subject: Re: [PATCH net] Bridge: Fix ipv6 mc snooping if bridge has no ipv6 address From: David Miller In-Reply-To: <20160625142028.GF4407@otheros> References: <1466764518-11358-1-git-send-email-daniel@dd-wrt.com> <20160625142028.GF4407@otheros> X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Text/Plain; charset=iso-8859-1 Content-Transfer-Encoding: 8BIT X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Tue, 28 Jun 2016 05:37:28 -0700 (PDT) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Linus Lüssing Date: Sat, 25 Jun 2016 16:20:28 +0200 > On Fri, Jun 24, 2016 at 12:35:18PM +0200, Daniel Danzberger wrote: >> The bridge is falsly dropping ipv6 mulitcast packets if there is: >> 1. No ipv6 address assigned on the brigde. >> 2. No external mld querier present. >> 3. The internal querier enabled. >> >> When the bridge fails to build mld queries, because it has no >> ipv6 address, it slilently returns, but keeps the local querier enabled. >> This specific case causes confusing packet loss. >> >> Ipv6 multicast snooping can only work if: >> a) An external querier is present >> OR >> b) The bridge has an ipv6 address an is capable of sending own queries >> >> Otherwise it has to forward/flood the ipv6 multicast traffic, >> because snooping cannot work. >> >> This patch fixes the issue by adding a flag to the bridge struct that >> indicates that there is currently no ipv6 address assinged to the bridge >> and returns a false state for the local querier in >> __br_multicast_querier_exists(). > > Fixes: 1d81d4c3dd88 ("bridge: check return value of ipv6_dev_get_saddr()") You're missing an initial 'd' in that SHA1-ID. With that fixed, applied and queued up for -stable.