* mac80211: double processing of probe response frames ?
@ 2014-02-26 16:49 Jean-Pierre Tosoni
2014-02-27 16:40 ` Johannes Berg
0 siblings, 1 reply; 2+ messages in thread
From: Jean-Pierre Tosoni @ 2014-02-26 16:49 UTC (permalink / raw)
To: linux-wireless
Hi all,
I am using mac80211 and ath9k.
I put a debug trace in the net/wireless/scan.c, in
cfg80211_inform_bss_frame().
I exercise scanning with wpa_supplicant and I monitor the air with
wireshark/airpcapN.
Each time a probe response frame is received, I can see that
cfg80211_inform_bss_frame() is called *twice.*
I wonder if this is really needed ? Is it possible to remove one of the
calls ?
AFAICT, mac80211/scan.c/ieee80211_bss_info_update() is called along two
paths,
1) in mac80211/rx.c, from __ieee80211_rx_handle_packet() and
ieee80211_scan_rx()
2) in mac80211/mlme.c, from the work queue calling
ieee80211_sta_rx_queued_mgmt()
=> ieee80211_rx_mgmt_probe_resp() => ieee80211_rx_bss_info()
Maybe part of the call to ieee80211_scan_rx() could be delayed and merged
later when ieee80211_rx_mgmt_probe_resp() is called ? Any comments ?
I am using compat-wireless-2013-04-16.
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: mac80211: double processing of probe response frames ?
2014-02-26 16:49 mac80211: double processing of probe response frames ? Jean-Pierre Tosoni
@ 2014-02-27 16:40 ` Johannes Berg
0 siblings, 0 replies; 2+ messages in thread
From: Johannes Berg @ 2014-02-27 16:40 UTC (permalink / raw)
To: Jean-Pierre Tosoni; +Cc: linux-wireless
On Wed, 2014-02-26 at 17:49 +0100, Jean-Pierre Tosoni wrote:
> Hi all,
>
> I am using mac80211 and ath9k.
> I put a debug trace in the net/wireless/scan.c, in
> cfg80211_inform_bss_frame().
> I exercise scanning with wpa_supplicant and I monitor the air with
> wireshark/airpcapN.
> Each time a probe response frame is received, I can see that
> cfg80211_inform_bss_frame() is called *twice.*
>
> I wonder if this is really needed ? Is it possible to remove one of the
> calls ?
>
> AFAICT, mac80211/scan.c/ieee80211_bss_info_update() is called along two
> paths,
> 1) in mac80211/rx.c, from __ieee80211_rx_handle_packet() and
> ieee80211_scan_rx()
> 2) in mac80211/mlme.c, from the work queue calling
> ieee80211_sta_rx_queued_mgmt()
> => ieee80211_rx_mgmt_probe_resp() => ieee80211_rx_bss_info()
>
> Maybe part of the call to ieee80211_scan_rx() could be delayed and merged
> later when ieee80211_rx_mgmt_probe_resp() is called ? Any comments ?
Not easily - the latter call is very much filtered. However, the
scan_rx() one should only do something during scan, I believe, and the
other *not* during scan?
johannes
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-02-27 16:40 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-26 16:49 mac80211: double processing of probe response frames ? Jean-Pierre Tosoni
2014-02-27 16:40 ` Johannes Berg
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).