Subject: kern/23151: ath(4) multicast filter is broken
To: None <gnats-bugs@gnats.netbsd.org>
From: None <naoki@fukaumi.org>
List: netbsd-bugs
Date: 10/14/2003 02:29:08
>Number: 23151
>Category: kern
>Synopsis: ath(4) multicast filter is broken
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Oct 13 17:30:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: FUKAUMI Naoki
>Release: NetBSD 1.6ZC
>Organization:
FUKAUMI Naoki
>Environment:
>Description:
ath(4) multicast filter is broken.
I can output a packet via ath0. but I can NOT get any packet
from ath0 (incl broadcast packet).
With ath_debug=1, I got this message,
> ath_mode_init: RX filter 0x17, MC filter 00000000:00000000
I thought MC filter is not setup correctly.
ath.c::ath_mcastfilter_*() may be wrong.
>How-To-Repeat:
Use ath(4).
>Fix:
This is very dirty patch. But it solves my problem.
(It sets MC filter to ffffffff:ffffffff)
Index: ath.c
===================================================================
RCS file: /cvsroot/src/sys/dev/ic/ath.c,v
retrieving revision 1.2
diff -u -r1.2 ath.c
--- ath.c 2003/10/13 05:34:30 1.2
+++ ath.c 2003/10/13 17:10:06
@@ -311,7 +311,7 @@
}
ifp->if_softc = sc;
- ifp->if_flags = IFF_SIMPLEX | IFF_BROADCAST | IFF_MULTICAST;
+ ifp->if_flags = IFF_SIMPLEX | IFF_BROADCAST | IFF_MULTICAST | IFF_ALLMULTI;
ifp->if_start = ath_start;
ifp->if_watchdog = ath_watchdog;
ifp->if_ioctl = ath_ioctl;
>Release-Note:
>Audit-Trail:
>Unformatted: