linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] carl9170: fix allmulticast mode
@ 2011-05-04 11:47 Nicolas Cavallari
  2011-05-04 14:43 ` Christian Lamparter
  0 siblings, 1 reply; 3+ messages in thread
From: Nicolas Cavallari @ 2011-05-04 11:47 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-wireless, Christian Lamparter

Currently, the driver only disable multicast filtering when the
FIF_ALLMULTI driver flag has been just set (ie,
if changed_flags& FIF_ALLMULTI and *new_flags& FIF_ALLMULTI) or else
it will reenable multicast filtering.

But next time, this condition will be false and multicast filtering
will be reenabled, even through FIF_ALLMULTI is still set.

This mean that allmulticast only works for less than two minutes in
ad-hoc mode.  This patch fixes that to disable multicast filtering
as long as FIF_ALLMULTI is set.

Signed-off-by: Nicolas Cavallari  <cavallar@lri.fr>

---

diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c
index 1638468..7d5c65e 100644
--- a/drivers/net/wireless/ath/carl9170/main.c
+++ b/drivers/net/wireless/ath/carl9170/main.c
@@ -883,7 +883,7 @@ static void carl9170_op_configure_filter(struct
ieee80211_hw *hw,
	 * then checking the error flags, later.
	 */

-	if (changed_flags&  FIF_ALLMULTI&&  *new_flags&  FIF_ALLMULTI)
+	if (*new_flags&  FIF_ALLMULTI)
		multicast = ~0ULL;

	if (multicast != ar->cur_mc_hash)


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH] carl9170: fix allmulticast mode
@ 2011-05-04 13:26 Nicolas Cavallari
  0 siblings, 0 replies; 3+ messages in thread
From: Nicolas Cavallari @ 2011-05-04 13:26 UTC (permalink / raw)
  To: John W. Linville; +Cc: linux-wireless, Christian Lamparter

Currently, the driver only disable multicast filtering when the
FIF_ALLMULTI driver flag has been just set (ie,
if changed_flags& FIF_ALLMULTI and *new_flags& FIF_ALLMULTI) or else
it will reenable multicast filtering.

But next time, this condition will be false and multicast filtering
will be reenabled, even through FIF_ALLMULTI is still set.

This mean that allmulticast only works for less than two minutes in
ad-hoc mode.  This patch fixes that to disable multicast filtering
as long as FIF_ALLMULTI is set.

Signed-off-by: Nicolas Cavallari  <cavallar@lri.fr>

---

diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c
index 0b370fe..7697445 100644
--- a/drivers/net/wireless/ath/carl9170/main.c
+++ b/drivers/net/wireless/ath/carl9170/main.c
@@ -901,7 +901,7 @@ static void carl9170_op_configure_filter(struct ieee80211_hw *hw,
 	 * then checking the error flags, later.
 	 */
 
-	if (changed_flags & FIF_ALLMULTI && *new_flags & FIF_ALLMULTI)
+	if (*new_flags & FIF_ALLMULTI)
 		multicast = ~0ULL;
 
 	if (multicast != ar->cur_mc_hash)

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] carl9170: fix allmulticast mode
  2011-05-04 11:47 [PATCH] carl9170: fix allmulticast mode Nicolas Cavallari
@ 2011-05-04 14:43 ` Christian Lamparter
  0 siblings, 0 replies; 3+ messages in thread
From: Christian Lamparter @ 2011-05-04 14:43 UTC (permalink / raw)
  To: Nicolas Cavallari; +Cc: John W. Linville, linux-wireless

On Wednesday 04 May 2011 11:47:17 Nicolas Cavallari wrote:
> Currently, the driver only disable multicast filtering when the
> FIF_ALLMULTI driver flag has been just set (ie,
> if changed_flags& FIF_ALLMULTI and *new_flags& FIF_ALLMULTI) or else
> it will reenable multicast filtering.
> 
> But next time, this condition will be false and multicast filtering
> will be reenabled, even through FIF_ALLMULTI is still set.
> 
> This mean that allmulticast only works for less than two minutes in
> ad-hoc mode.  This patch fixes that to disable multicast filtering
> as long as FIF_ALLMULTI is set.
> 
> Signed-off-by: Nicolas Cavallari  <cavallar@lri.fr>
Acked-by: Christian Lamparter <chunkeey@googlemail.com>
[Just a minor niggle]

> ---
> diff --git a/drivers/net/wireless/ath/carl9170/main.c b/drivers/net/wireless/ath/carl9170/main.c
> index 1638468..7d5c65e 100644
> --- a/drivers/net/wireless/ath/carl9170/main.c
> +++ b/drivers/net/wireless/ath/carl9170/main.c
> @@ -883,7 +883,7 @@ static void carl9170_op_configure_filter(struct
> ieee80211_hw *hw,
> 	 * then checking the error flags, later.
> 	 */
> 
> -	if (changed_flags&  FIF_ALLMULTI&&  *new_flags&  FIF_ALLMULTI)
                      ^^^            ^^^          ^^^
It looks like your mailer realigned the spaces around the operators
and added a line-wrap so it won't apply without some help. Can you
fix the problem and send the patch again?

Thanks,
	Christian

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-05-04 13:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-04 11:47 [PATCH] carl9170: fix allmulticast mode Nicolas Cavallari
2011-05-04 14:43 ` Christian Lamparter
  -- strict thread matches above, loose matches on Subject: below --
2011-05-04 13:26 Nicolas Cavallari

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).