public inbox for iwd@lists.linux.dev
 help / color / mirror / Atom feed
From: Denis Kenzior <denkenz@gmail.com>
To: James Prestwood <prestwoj@gmail.com>, iwd@lists.linux.dev
Subject: Re: [PATCH 4/4] station: rate limit packet loss roam scans
Date: Mon, 30 Oct 2023 09:48:50 -0500	[thread overview]
Message-ID: <4e5fd484-94f6-4b41-bee2-f0b01e760fa2@gmail.com> (raw)
In-Reply-To: <20231030134837.452957-5-prestwoj@gmail.com>

Hi James,

On 10/30/23 08:48, James Prestwood wrote:
> The packet loss handler puts a higher priority on roaming compared
> to the low signal roam path. This is generally beneficial since this
> event usually indicates some problem with the BSS and generally is
> an indicator that a disconnect will follow sometime soon.
> 
> But by immediately issuing a scan we run the risk of causing many
> successive scans if more packet loss events arrive following
> the roam scans (and if no candidates are found). Logs provided
> further.
> 
> To help with this handle the first event with priority and
> immediately issue a roam scan. If another event comes in within a
> certain timeframe (2 seconds) don't immediately scan, but instead
> rearm the roam timer instead of issuing a scan. This also handles
> the case of a low signal roam scan followed by a packet loss
> event. Delaying the roam will at least provide some time for packets
> to get out in between roam scans.
> 
> Logs were snipped to be less verbose, but this cycled happened
> 5 times prior. In total 7 scans were issued in 5 seconds which may
> very well have been the reason for the local disconnect:
> 
> Oct 27 16:23:46 src/station.c:station_roam_failed() 9
> Oct 27 16:23:46 src/wiphy.c:wiphy_radio_work_done() Work item 29 done
> Oct 27 16:23:47 src/netdev.c:netdev_mlme_notify() MLME notification Notify CQM(64)
> Oct 27 16:23:47 src/station.c:station_packets_lost() Packets lost event: 10
> Oct 27 16:23:47 src/station.c:station_roam_scan() ifindex: 9
> Oct 27 16:23:47 src/wiphy.c:wiphy_radio_work_insert() Inserting work item 30
> Oct 27 16:23:47 src/wiphy.c:wiphy_radio_work_next() Starting work item 30
> Oct 27 16:23:47 src/station.c:station_start_roam() Using cached neighbor report for roam
> Oct 27 16:23:47 src/scan.c:scan_notify() Scan notification Trigger Scan(33)
> Oct 27 16:23:47 src/scan.c:scan_request_triggered() Active scan triggered for wdev a
> Oct 27 16:23:47 src/scan.c:scan_notify() Scan notification New Scan Results(34)
> Oct 27 16:23:47 src/netdev.c:netdev_link_notify() event 16 on ifindex 9
> ... scan results ...
> Oct 27 16:23:47 src/station.c:station_roam_failed() 9
> Oct 27 16:23:47 src/wiphy.c:wiphy_radio_work_done() Work item 30 done
> Oct 27 16:23:47 src/netdev.c:netdev_mlme_notify() MLME notification Notify CQM(64)
> Oct 27 16:23:47 src/station.c:station_packets_lost() Packets lost event: 10
> Oct 27 16:23:47 src/station.c:station_roam_scan() ifindex: 9
> Oct 27 16:23:47 src/wiphy.c:wiphy_radio_work_insert() Inserting work item 31
> Oct 27 16:23:47 src/wiphy.c:wiphy_radio_work_next() Starting work item 31
> Oct 27 16:23:47 src/station.c:station_start_roam() Using cached neighbor report for roam
> Oct 27 16:23:47 src/scan.c:scan_notify() Scan notification Trigger Scan(33)
> Oct 27 16:23:47 src/scan.c:scan_request_triggered() Active scan triggered for wdev a
> Oct 27 16:23:48 src/scan.c:scan_notify() Scan notification New Scan Results(34)
> Oct 27 16:23:48 src/netdev.c:netdev_link_notify() event 16 on ifindex 9
> ... scan results ...
> Oct 27 16:23:48 src/station.c:station_roam_failed() 9
> Oct 27 16:23:48 src/wiphy.c:wiphy_radio_work_done() Work item 31 done
> Oct 27 16:23:48 src/netdev.c:netdev_mlme_notify() MLME notification Notify CQM(64)
> Oct 27 16:23:48 src/station.c:station_packets_lost() Packets lost event: 10
> Oct 27 16:23:48 src/station.c:station_roam_scan() ifindex: 9
> Oct 27 16:23:48 src/wiphy.c:wiphy_radio_work_insert() Inserting work item 32
> Oct 27 16:23:48 src/wiphy.c:wiphy_radio_work_next() Starting work item 32
> Oct 27 16:23:48 src/station.c:station_start_roam() Using cached neighbor report for roam
> Oct 27 16:23:48 src/scan.c:scan_notify() Scan notification Trigger Scan(33)
> Oct 27 16:23:48 src/scan.c:scan_request_triggered() Active scan triggered for wdev a
> Oct 27 16:23:49 src/netdev.c:netdev_link_notify() event 16 on ifindex 9
> Oct 27 16:23:49 src/netdev.c:netdev_mlme_notify() MLME notification Del Station(20)
> Oct 27 16:23:49 src/netdev.c:netdev_mlme_notify() MLME notification Deauthenticate(39)
> Oct 27 16:23:49 src/netdev.c:netdev_deauthenticate_event()
> Oct 27 16:23:49 src/netdev.c:netdev_mlme_notify() MLME notification Disconnect(48)
> Oct 27 16:23:49 src/netdev.c:netdev_disconnect_event()
> Oct 27 16:23:49 Received Deauthentication event, reason: 4, from_ap: false
> ---
>   src/station.c | 28 +++++++++++++++++++++++++++-
>   1 file changed, 27 insertions(+), 1 deletion(-)
> 

Applied, thanks.

Regards,
-Denis


  reply	other threads:[~2023-10-30 14:48 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-30 13:48 [PATCH 0/4] Packet/beacon loss roaming improvements James Prestwood
2023-10-30 13:48 ` [PATCH 1/4] station: rename ap_directed_roam to force_roam James Prestwood
2023-10-30 13:48 ` [PATCH 2/4] station: start roam on beacon loss event James Prestwood
2023-10-30 13:48 ` [PATCH 3/4] netdev: handle/send " James Prestwood
2023-10-30 13:48 ` [PATCH 4/4] station: rate limit packet loss roam scans James Prestwood
2023-10-30 14:48   ` Denis Kenzior [this message]
2023-10-30 15:00 ` [PATCH 0/4] Packet/beacon loss roaming improvements Denis Kenzior
2023-10-30 15:37   ` James Prestwood
2023-10-30 17:05     ` Denis Kenzior
2023-10-30 17:37       ` James Prestwood
2023-11-01 12:07         ` James Prestwood
2023-11-02  1:39           ` Denis Kenzior
2023-11-02 11:58             ` James Prestwood
2023-11-02 14:10               ` Denis Kenzior
2023-11-02 14:33                 ` James Prestwood
2023-11-02 15:17                   ` Denis Kenzior
2023-11-02 15:41                     ` James Prestwood
2023-11-02 16:10                       ` Denis Kenzior
2023-11-02 16:13                         ` James Prestwood

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4e5fd484-94f6-4b41-bee2-f0b01e760fa2@gmail.com \
    --to=denkenz@gmail.com \
    --cc=iwd@lists.linux.dev \
    --cc=prestwoj@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox