On Tuesday 17 February 2015 02:53 PM, Michal Kazior wrote:
On 17 February 2015 at 08:43, Vasanthakumar Thiagarajan
<[email protected]> wrote:
Promiscuous mode is enabled when wlan interface is added to
bridge. ath10k creates a monitor mode when promiscuous mode
is enabled. When monitor vdev is runing along with other
vdev(s) there is a huge number of interrupts generated
especially in noisy condition. Fix this by not enabling
promiscuous(monitor) mode when already a vdev is running.
This does not change the support of virtual interface of
type monitor along with other vdevs.

Signed-off-by: Vasanthakumar Thiagarajan <[email protected]>
---
  drivers/net/wireless/ath/ath10k/mac.c |   16 ++++++++++++++++
  1 file changed, 16 insertions(+)

diff --git a/drivers/net/wireless/ath/ath10k/mac.c 
b/drivers/net/wireless/ath/ath10k/mac.c
index 3b5aaa3..66cc0a8 100644
--- a/drivers/net/wireless/ath/ath10k/mac.c
+++ b/drivers/net/wireless/ath/ath10k/mac.c
@@ -969,6 +969,15 @@ static int ath10k_vdev_start_restart(struct ath10k_vif 
*arvif, bool restart)
         ar->num_started_vdevs++;
         ath10k_recalc_radar_detection(ar);

+       if (ar->filter_flags & FIF_PROMISC_IN_BSS) {
+               ar->filter_flags &= ~FIF_PROMISC_IN_BSS;
+               ath10k_dbg(ar, ATH10K_DBG_MAC,
+                          "mac disabling promiscuous mode because vdev is 
started\n");
+               ret = ath10k_monitor_recalc(ar);

The entire logic should go to ath10k_monitor_recalc().

Sure.


Also I'm pretty sure this breaks 4addr station briding for main 636
fw. I can't fully test this now though (there seems to be a regression
against fw 636 and it keeps crashing with monitor vdev over and over
again).

Ok. Can we make this change specific to non-sta mode?.

Vasanth

MichaƂ


_______________________________________________
ath10k mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/ath10k

Reply via email to