From: Jeff Garzik <jgarzik@pobox.com>
To: Joseph Fannin <jhf@rivenstone.net>
Cc: netdev@oss.sgi.com
Subject: Re: 2.6 sis900 (and tlan?) multicast bug
Date: Mon, 26 Jan 2004 17:22:41 -0500 [thread overview]
Message-ID: <40159331.80808@pobox.com> (raw)
In-Reply-To: <20040126204215.GA25578@rivenstone.net>
Joseph Fannin wrote:
> "Craig A. Huegen" <huegen@pentics.com> wrote:
>
>>In the same vein as:
>>http://seclists.org/lists/linux-kernel/2003/Oct/5794.html
>
>
>>...there is a bug in the SiS900 driver in 2.6.1 which prevents multicast
>>MAC filtering from working properly. This breaks IPv6.
>
>
> I'm seeing this problem too. My sis900 interface can't get an
> IPv6 address unless promiscious or allmulti mode is set, since it
> doesn't get responses on ip6-allrouters.
>
> Please note that I am not subscribed to netdev, so a CC on any
> responses would be appreciated.
>
>
>>Patch attached (same one as from the 2.4 post from Oct 28) that made
>>IPv6 work for me again.
>
>
> From the original post, referring to the change this reverts:
>
>
>>>This will not work for bit_nr larger than 16 and hence the failure.
>>>Reverting to use set_bit causes multicast to be handled properly.
>
>
>>--- linux/drivers/net/sis900.c.old 2004-01-17 03:56:53.893211412 -0600
>>+++ linux/drivers/net/sis900.c 2004-01-17 03:57:02.785567615 -0600
>>@@ -2091,9 +2091,8 @@
>> rx_mode = RFAAB;
>> for (i = 0, mclist = net_dev->mc_list; mclist && i < net_dev->mc_count;
>> i++, mclist = mclist->next) {
>>- unsigned int bit_nr =
>>- sis900_mcast_bitnr(mclist->dmi_addr, revision);
>>- mc_filter[bit_nr >> 4] |= (1 << bit_nr);
>>+ set_bit(sis900_mcast_bitnr(mclist->dmi_addr, revision),
>>+ mc_filter);
>> }
>> }
>
>
> This fix didn't go into 2.4 either, so presumably something is wrong
> with it (perhaps we're moving away from set_bit)? I am over my head
> here really, but I don't want to just set allmulti mode and forget
> about this bug.
Correct, set_bit should only occur on unsigned long variables. So, the
code needs to manually set that bit.
Jeff
next prev parent reply other threads:[~2004-01-26 22:22 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-01-26 20:42 2.6 sis900 (and tlan?) multicast bug Joseph Fannin
2004-01-26 22:22 ` Jeff Garzik [this message]
[not found] ` <20040212045321.GA15355@rivenstone.net>
2004-02-12 5:23 ` Jeff Garzik
2004-02-19 0:13 ` Jeff Garzik
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=40159331.80808@pobox.com \
--to=jgarzik@pobox.com \
--cc=jhf@rivenstone.net \
--cc=netdev@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).