linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mac80211: Don't stop tx queue on master device while scanning.
@ 2007-06-08 13:31 Ivo van Doorn
  2007-06-11 21:20 ` John W. Linville
  0 siblings, 1 reply; 9+ messages in thread
From: Ivo van Doorn @ 2007-06-08 13:31 UTC (permalink / raw)
  To: linux-wireless; +Cc: John Linville, Jiri Benc, Mattias Nissler

From: Mattias Nissler <mattias.nissler@gmx.de>

mac80211 stops the tx queues during scans. This is wrong with respect
to the master deivce tx queue, since stopping it prevents any probes
from being sent during the scan. Instead, they accumulate in the queue
and are only sent after the scan is finished, which is obviously
wrong.

Signed-off-by: Mattias Nissler <mattias.nissler@gmx.de>

---
 net/mac80211/ieee80211_sta.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c
index 8bd8031..9fdd265 100644
--- a/net/mac80211/ieee80211_sta.c
+++ b/net/mac80211/ieee80211_sta.c
@@ -3533,11 +3533,17 @@ void ieee80211_scan_completed(struct ieee80211_hw *hw)
 
 	read_lock(&local->sub_if_lock);
 	list_for_each_entry(sdata, &local->sub_if_list, list) {
+
+		/* No need to wake the master device. */
+		if (sdata->dev == local->mdev)
+			continue;
+
 		if (sdata->type == IEEE80211_IF_TYPE_STA) {
 			if (sdata->u.sta.associated)
 				ieee80211_send_nullfunc(local, sdata, 0);
 			ieee80211_sta_timer((unsigned long)sdata);
 		}
+
 		netif_wake_queue(sdata->dev);
 	}
 	read_unlock(&local->sub_if_lock);
@@ -3679,6 +3685,12 @@ static int ieee80211_sta_start_scan(struct net_device *dev,
 
 	read_lock(&local->sub_if_lock);
 	list_for_each_entry(sdata, &local->sub_if_list, list) {
+
+		/* Don't stop the master interface, otherwise we can't transmit
+		 * probes! */
+		if (sdata->dev == local->mdev)
+			continue;
+
 		netif_stop_queue(sdata->dev);
 		if (sdata->type == IEEE80211_IF_TYPE_STA &&
 		    sdata->u.sta.associated)
-- 
1.5.2

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

* Re: [PATCH] mac80211: Don't stop tx queue on master device while scanning.
  2007-06-08 13:31 [PATCH] mac80211: Don't stop tx queue on master device while scanning Ivo van Doorn
@ 2007-06-11 21:20 ` John W. Linville
  2007-06-11 21:59   ` Michael Wu
  0 siblings, 1 reply; 9+ messages in thread
From: John W. Linville @ 2007-06-11 21:20 UTC (permalink / raw)
  To: Ivo van Doorn; +Cc: linux-wireless, Jiri Benc, Mattias Nissler, Michael Wu

On Fri, Jun 08, 2007 at 03:31:13PM +0200, Ivo van Doorn wrote:
> From: Mattias Nissler <mattias.nissler@gmx.de>
> 
> mac80211 stops the tx queues during scans. This is wrong with respect
> to the master deivce tx queue, since stopping it prevents any probes
> from being sent during the scan. Instead, they accumulate in the queue
> and are only sent after the scan is finished, which is obviously
> wrong.

Can I get a quick ACK/NAK on this one from the mac80211 guys?

John
-- 
John W. Linville
linville@tuxdriver.com

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

* Re: [PATCH] mac80211: Don't stop tx queue on master device while scanning.
  2007-06-11 21:20 ` John W. Linville
@ 2007-06-11 21:59   ` Michael Wu
  2007-06-11 22:01     ` Michael Wu
  0 siblings, 1 reply; 9+ messages in thread
From: Michael Wu @ 2007-06-11 21:59 UTC (permalink / raw)
  To: John W. Linville
  Cc: Ivo van Doorn, linux-wireless, Jiri Benc, Mattias Nissler

[-- Attachment #1: Type: text/plain, Size: 620 bytes --]

On Monday 11 June 2007 14:20, John W. Linville wrote:
> On Fri, Jun 08, 2007 at 03:31:13PM +0200, Ivo van Doorn wrote:
> > From: Mattias Nissler <mattias.nissler@gmx.de>
> >
> > mac80211 stops the tx queues during scans. This is wrong with respect
> > to the master deivce tx queue, since stopping it prevents any probes
> > from being sent during the scan. Instead, they accumulate in the queue
> > and are only sent after the scan is finished, which is obviously
> > wrong.
>
> Can I get a quick ACK/NAK on this one from the mac80211 guys?
>
ACK.

Did this actually get to linux-wireless? I never saw it.

-Michael Wu

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* Re: [PATCH] mac80211: Don't stop tx queue on master device while scanning.
  2007-06-11 21:59   ` Michael Wu
@ 2007-06-11 22:01     ` Michael Wu
  0 siblings, 0 replies; 9+ messages in thread
From: Michael Wu @ 2007-06-11 22:01 UTC (permalink / raw)
  To: John W. Linville
  Cc: Ivo van Doorn, linux-wireless, Jiri Benc, Mattias Nissler

[-- Attachment #1: Type: text/plain, Size: 171 bytes --]

On Monday 11 June 2007 14:59, Michael Wu wrote:
> Did this actually get to linux-wireless? I never saw it.
>
Nevermind, I see it. Missed it for some reason..

-Michael Wu

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

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

* mac80211 fixes for 2.6.22
@ 2007-06-12  1:16 John W. Linville
  2007-06-12  1:17 ` [PATCH] cfg80211: fix signed macaddress in sysfs John W. Linville
  2007-06-12 21:14 ` mac80211 fixes for 2.6.22 David Miller
  0 siblings, 2 replies; 9+ messages in thread
From: John W. Linville @ 2007-06-12  1:16 UTC (permalink / raw)
  To: davem; +Cc: linux-wireless, netdev

Dave,

Here are a few mac80211 patches appropriate for 2.6.22.

Individual patches to follow, or you can pull at your leisure...

John

---

The following changes since commit 5ecd3100e695228ac5e0ce0e325e252c0f11806f:
  Linus Torvalds (1):
        Linux 2.6.22-rc4

are found in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git mac80211-fixes

David Lamparter (1):
      cfg80211: fix signed macaddress in sysfs

Johannes Berg (1):
      mac80211: fix debugfs tx power reduction output

Mattias Nissler (1):
      mac80211: Don't stop tx queue on master device while scanning.

 net/mac80211/debugfs.c       |    2 +-
 net/mac80211/ieee80211_sta.c |   12 ++++++++++++
 net/wireless/sysfs.c         |    2 +-
 3 files changed, 14 insertions(+), 2 deletions(-)

-- 
John W. Linville
linville@tuxdriver.com

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

* [PATCH] cfg80211: fix signed macaddress in sysfs
  2007-06-12  1:16 mac80211 fixes for 2.6.22 John W. Linville
@ 2007-06-12  1:17 ` John W. Linville
  2007-06-12  1:18   ` [PATCH] mac80211: fix debugfs tx power reduction output John W. Linville
  2007-06-12 21:14 ` mac80211 fixes for 2.6.22 David Miller
  1 sibling, 1 reply; 9+ messages in thread
From: John W. Linville @ 2007-06-12  1:17 UTC (permalink / raw)
  To: davem; +Cc: linux-wireless, netdev

From: David Lamparter <lists@diac24.net>

Fix signedness mixup making mac addresses show up strangely
(like 00:11:22:33:44:ffffffaa) in /sys/class/ieee80211/*/macaddress.

Signed-off-by: David Lamparter <equinox@diac24.net>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
---
 net/wireless/sysfs.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/net/wireless/sysfs.c b/net/wireless/sysfs.c
index 3ebae14..88aaacd 100644
--- a/net/wireless/sysfs.c
+++ b/net/wireless/sysfs.c
@@ -33,7 +33,7 @@ static ssize_t _show_permaddr(struct device *dev,
 			      struct device_attribute *attr,
 			      char *buf)
 {
-	char *addr = dev_to_rdev(dev)->wiphy.perm_addr;
+	unsigned char *addr = dev_to_rdev(dev)->wiphy.perm_addr;
 
 	return sprintf(buf, "%.2x:%.2x:%.2x:%.2x:%.2x:%.2x\n",
 		       addr[0], addr[1], addr[2], addr[3], addr[4], addr[5]);
-- 
1.5.0.6

-- 
John W. Linville
linville@tuxdriver.com

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

* [PATCH] mac80211: fix debugfs tx power reduction output
  2007-06-12  1:17 ` [PATCH] cfg80211: fix signed macaddress in sysfs John W. Linville
@ 2007-06-12  1:18   ` John W. Linville
  2007-06-12  1:18     ` [PATCH] mac80211: Don't stop tx queue on master device while scanning John W. Linville
  0 siblings, 1 reply; 9+ messages in thread
From: John W. Linville @ 2007-06-12  1:18 UTC (permalink / raw)
  To: davem; +Cc: linux-wireless, netdev

From: Johannes Berg <johannes@sipsolutions.net>

This patch fixes a typo in mac80211's debugfs.c.

Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
---
 net/mac80211/debugfs.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/net/mac80211/debugfs.c b/net/mac80211/debugfs.c
index bb6c0fe..476c848 100644
--- a/net/mac80211/debugfs.c
+++ b/net/mac80211/debugfs.c
@@ -112,7 +112,7 @@ DEBUGFS_READONLY_FILE(wep_iv, 20, "%#06x",
 		      local->wep_iv & 0xffffff);
 DEBUGFS_READONLY_FILE(tx_power_reduction, 20, "%d.%d dBm",
 		      local->hw.conf.tx_power_reduction / 10,
-		      local->hw.conf.tx_power_reduction & 10);
+		      local->hw.conf.tx_power_reduction % 10);
 DEBUGFS_READONLY_FILE(rate_ctrl_alg, 100, "%s",
 		      local->rate_ctrl ? local->rate_ctrl->ops->name : "<unset>");
 
-- 
1.5.0.6

-- 
John W. Linville
linville@tuxdriver.com

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

* [PATCH] mac80211: Don't stop tx queue on master device while scanning.
  2007-06-12  1:18   ` [PATCH] mac80211: fix debugfs tx power reduction output John W. Linville
@ 2007-06-12  1:18     ` John W. Linville
  0 siblings, 0 replies; 9+ messages in thread
From: John W. Linville @ 2007-06-12  1:18 UTC (permalink / raw)
  To: davem; +Cc: linux-wireless, netdev

From: Mattias Nissler <mattias.nissler@gmx.de>

mac80211 stops the tx queues during scans. This is wrong with respect
to the master deivce tx queue, since stopping it prevents any probes
from being sent during the scan. Instead, they accumulate in the queue
and are only sent after the scan is finished, which is obviously
wrong.

Signed-off-by: Mattias Nissler <mattias.nissler@gmx.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
---
 net/mac80211/ieee80211_sta.c |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/net/mac80211/ieee80211_sta.c b/net/mac80211/ieee80211_sta.c
index 9f30ae4..91b545c 100644
--- a/net/mac80211/ieee80211_sta.c
+++ b/net/mac80211/ieee80211_sta.c
@@ -2592,11 +2592,17 @@ void ieee80211_scan_completed(struct ieee80211_hw *hw)
 
 	read_lock(&local->sub_if_lock);
 	list_for_each_entry(sdata, &local->sub_if_list, list) {
+
+		/* No need to wake the master device. */
+		if (sdata->dev == local->mdev)
+			continue;
+
 		if (sdata->type == IEEE80211_IF_TYPE_STA) {
 			if (sdata->u.sta.associated)
 				ieee80211_send_nullfunc(local, sdata, 0);
 			ieee80211_sta_timer((unsigned long)sdata);
 		}
+
 		netif_wake_queue(sdata->dev);
 	}
 	read_unlock(&local->sub_if_lock);
@@ -2738,6 +2744,12 @@ static int ieee80211_sta_start_scan(struct net_device *dev,
 
 	read_lock(&local->sub_if_lock);
 	list_for_each_entry(sdata, &local->sub_if_list, list) {
+
+		/* Don't stop the master interface, otherwise we can't transmit
+		 * probes! */
+		if (sdata->dev == local->mdev)
+			continue;
+
 		netif_stop_queue(sdata->dev);
 		if (sdata->type == IEEE80211_IF_TYPE_STA &&
 		    sdata->u.sta.associated)
-- 
1.5.0.6

-- 
John W. Linville
linville@tuxdriver.com

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

* Re: mac80211 fixes for 2.6.22
  2007-06-12  1:16 mac80211 fixes for 2.6.22 John W. Linville
  2007-06-12  1:17 ` [PATCH] cfg80211: fix signed macaddress in sysfs John W. Linville
@ 2007-06-12 21:14 ` David Miller
  1 sibling, 0 replies; 9+ messages in thread
From: David Miller @ 2007-06-12 21:14 UTC (permalink / raw)
  To: linville; +Cc: linux-wireless, netdev

From: "John W. Linville" <linville@tuxdriver.com>
Date: Mon, 11 Jun 2007 21:16:16 -0400

> Here are a few mac80211 patches appropriate for 2.6.22.
> 
> Individual patches to follow, or you can pull at your leisure...
...
>   git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6.git mac80211-fixes

Pulled, thanks John.

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

end of thread, other threads:[~2007-06-12 21:14 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-06-12  1:16 mac80211 fixes for 2.6.22 John W. Linville
2007-06-12  1:17 ` [PATCH] cfg80211: fix signed macaddress in sysfs John W. Linville
2007-06-12  1:18   ` [PATCH] mac80211: fix debugfs tx power reduction output John W. Linville
2007-06-12  1:18     ` [PATCH] mac80211: Don't stop tx queue on master device while scanning John W. Linville
2007-06-12 21:14 ` mac80211 fixes for 2.6.22 David Miller
  -- strict thread matches above, loose matches on Subject: below --
2007-06-08 13:31 [PATCH] mac80211: Don't stop tx queue on master device while scanning Ivo van Doorn
2007-06-11 21:20 ` John W. Linville
2007-06-11 21:59   ` Michael Wu
2007-06-11 22:01     ` Michael Wu

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