diff mbox

iwlwifi: Reason 7 periodic disconnect

Message ID CANUX_P0LRRczVCSFR7RE5coaYFxwFXyqC90pdm=oVwEiEt-7zw@mail.gmail.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Emmanuel Grumbach Oct. 22, 2014, 9:10 a.m. UTC
On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro> wrote:
> Yep! `scb_timeout` is 60 on my router.
>
> On Tue, Oct 21, 2014, at 14:00, poma wrote:
>> On 21.10.2014 10:35, Felix Fietkau wrote:
>> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
>> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
>> > This is a Broadcom based device, so it should behave in the same way as
>> > other APs/Routers running the Broadcom drivers.
>> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
>> > BlockAckReq or Action frame from a station that's not associated, so
>> > probably it has already kicked out your iwlwifi client earlier. Not sure
>> > why that doesn't show up in the log though.
>> >
>>
>> Whether this might refer to the Station Control Block Timeout value
>>
>> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
>> ...
>> scb_timeout
>>
>> AP only: inactivity timeout value for authenticated stas
>>

Actually, mac80211 should be probing the AP every 30 seconds but a
beacon might abort the probe...
Can you try something like this:

        }

        /*



>>
>> poma
>>
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Lauren?iu Nicola Oct. 22, 2014, 9:53 p.m. UTC | #1
Nope. It seems that code doesn't get executed when my issue occurs (or
in my five or ten minutes of uptime). I've seen
`ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
but (if I'm not wrong) not on every disconnect.

And as far as I can tell, force_cam is set to true.

Laurentiu

On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
> wrote:
> > Yep! `scb_timeout` is 60 on my router.
> >
> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
> >> On 21.10.2014 10:35, Felix Fietkau wrote:
> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
> >> > This is a Broadcom based device, so it should behave in the same way as
> >> > other APs/Routers running the Broadcom drivers.
> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
> >> > BlockAckReq or Action frame from a station that's not associated, so
> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
> >> > why that doesn't show up in the log though.
> >> >
> >>
> >> Whether this might refer to the Station Control Block Timeout value
> >>
> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
> >> ...
> >> scb_timeout
> >>
> >> AP only: inactivity timeout value for authenticated stas
> >>
> 
> Actually, mac80211 should be probing the AP every 30 seconds but a
> beacon might abort the probe...
> Can you try something like this:
> 
> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> index 75df184..c9db7cf 100644
> --- a/net/mac80211/mlme.c
> +++ b/net/mac80211/mlme.c
> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
> ieee80211_sub_if_data *sdata,
>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
>                 mlme_dbg_ratelimited(sdata,
>                                      "cancelling AP probe due to a
> received beacon\n");
> -               ieee80211_reset_ap_probe(sdata);
> +               pr_err("Not cancelling the probe to make sure the AP
> hears us from time to time\n");
> +               //ieee80211_reset_ap_probe(sdata);
>         }
> 
>         /*
> 
> 
> 
> >>
> >> poma
> >>
> >>
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Emmanuel Grumbach Oct. 23, 2014, 5:21 a.m. UTC | #2
On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro> wrote:
> Nope. It seems that code doesn't get executed when my issue occurs (or
> in my five or ten minutes of uptime). I've seen
> `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
> but (if I'm not wrong) not on every disconnect.
>
> And as far as I can tell, force_cam is set to true.

Can you please try with the patch attached and send the logs?
I again need MAC80211_MLME_DEBUG.

Thanks.

>
> Laurentiu
>
> On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
>> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
>> wrote:
>> > Yep! `scb_timeout` is 60 on my router.
>> >
>> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
>> >> On 21.10.2014 10:35, Felix Fietkau wrote:
>> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
>> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
>> >> > This is a Broadcom based device, so it should behave in the same way as
>> >> > other APs/Routers running the Broadcom drivers.
>> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
>> >> > BlockAckReq or Action frame from a station that's not associated, so
>> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
>> >> > why that doesn't show up in the log though.
>> >> >
>> >>
>> >> Whether this might refer to the Station Control Block Timeout value
>> >>
>> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
>> >> ...
>> >> scb_timeout
>> >>
>> >> AP only: inactivity timeout value for authenticated stas
>> >>
>>
>> Actually, mac80211 should be probing the AP every 30 seconds but a
>> beacon might abort the probe...
>> Can you try something like this:
>>
>> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
>> index 75df184..c9db7cf 100644
>> --- a/net/mac80211/mlme.c
>> +++ b/net/mac80211/mlme.c
>> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
>> ieee80211_sub_if_data *sdata,
>>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
>>                 mlme_dbg_ratelimited(sdata,
>>                                      "cancelling AP probe due to a
>> received beacon\n");
>> -               ieee80211_reset_ap_probe(sdata);
>> +               pr_err("Not cancelling the probe to make sure the AP
>> hears us from time to time\n");
>> +               //ieee80211_reset_ap_probe(sdata);
>>         }
>>
>>         /*
>>
>>
>>
>> >>
>> >> poma
>> >>
>> >>
>> >> --
>> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> in
>> >> the body of a message to majordomo@vger.kernel.org
>> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Lauren?iu Nicola Oct. 23, 2014, 7:30 a.m. UTC | #3
I did; the card still gets disconnected and the message doesn't show up
in dmesg.

Laurentiu

On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
> wrote:
> > Nope. It seems that code doesn't get executed when my issue occurs (or
> > in my five or ten minutes of uptime). I've seen
> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
> > but (if I'm not wrong) not on every disconnect.
> >
> > And as far as I can tell, force_cam is set to true.
> 
> Can you please try with the patch attached and send the logs?
> I again need MAC80211_MLME_DEBUG.
> 
> Thanks.
> 
> >
> > Laurentiu
> >
> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
> >> wrote:
> >> > Yep! `scb_timeout` is 60 on my router.
> >> >
> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
> >> >> > This is a Broadcom based device, so it should behave in the same way as
> >> >> > other APs/Routers running the Broadcom drivers.
> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
> >> >> > BlockAckReq or Action frame from a station that's not associated, so
> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
> >> >> > why that doesn't show up in the log though.
> >> >> >
> >> >>
> >> >> Whether this might refer to the Station Control Block Timeout value
> >> >>
> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
> >> >> ...
> >> >> scb_timeout
> >> >>
> >> >> AP only: inactivity timeout value for authenticated stas
> >> >>
> >>
> >> Actually, mac80211 should be probing the AP every 30 seconds but a
> >> beacon might abort the probe...
> >> Can you try something like this:
> >>
> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> >> index 75df184..c9db7cf 100644
> >> --- a/net/mac80211/mlme.c
> >> +++ b/net/mac80211/mlme.c
> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
> >> ieee80211_sub_if_data *sdata,
> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
> >>                 mlme_dbg_ratelimited(sdata,
> >>                                      "cancelling AP probe due to a
> >> received beacon\n");
> >> -               ieee80211_reset_ap_probe(sdata);
> >> +               pr_err("Not cancelling the probe to make sure the AP
> >> hears us from time to time\n");
> >> +               //ieee80211_reset_ap_probe(sdata);
> >>         }
> >>
> >>         /*
> >>
> >>
> >>
> >> >>
> >> >> poma
> >> >>
> >> >>
> >> >> --
> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> in
> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Emmanuel Grumbach Oct. 23, 2014, 8:07 a.m. UTC | #4
On Thu, Oct 23, 2014 at 10:30 AM, Lauren?iu Nicola <lnicola@dend.ro> wrote:
> I did; the card still gets disconnected and the message doesn't show up
> in dmesg.
>

You had *none* of the many prints I added in the log?

That seems really weird...

> Laurentiu
>
> On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
>> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
>> wrote:
>> > Nope. It seems that code doesn't get executed when my issue occurs (or
>> > in my five or ten minutes of uptime). I've seen
>> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
>> > but (if I'm not wrong) not on every disconnect.
>> >
>> > And as far as I can tell, force_cam is set to true.
>>
>> Can you please try with the patch attached and send the logs?
>> I again need MAC80211_MLME_DEBUG.
>>
>> Thanks.
>>
>> >
>> > Laurentiu
>> >
>> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
>> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> wrote:
>> >> > Yep! `scb_timeout` is 60 on my router.
>> >> >
>> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
>> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
>> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
>> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
>> >> >> > This is a Broadcom based device, so it should behave in the same way as
>> >> >> > other APs/Routers running the Broadcom drivers.
>> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
>> >> >> > BlockAckReq or Action frame from a station that's not associated, so
>> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
>> >> >> > why that doesn't show up in the log though.
>> >> >> >
>> >> >>
>> >> >> Whether this might refer to the Station Control Block Timeout value
>> >> >>
>> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
>> >> >> ...
>> >> >> scb_timeout
>> >> >>
>> >> >> AP only: inactivity timeout value for authenticated stas
>> >> >>
>> >>
>> >> Actually, mac80211 should be probing the AP every 30 seconds but a
>> >> beacon might abort the probe...
>> >> Can you try something like this:
>> >>
>> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
>> >> index 75df184..c9db7cf 100644
>> >> --- a/net/mac80211/mlme.c
>> >> +++ b/net/mac80211/mlme.c
>> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
>> >> ieee80211_sub_if_data *sdata,
>> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
>> >>                 mlme_dbg_ratelimited(sdata,
>> >>                                      "cancelling AP probe due to a
>> >> received beacon\n");
>> >> -               ieee80211_reset_ap_probe(sdata);
>> >> +               pr_err("Not cancelling the probe to make sure the AP
>> >> hears us from time to time\n");
>> >> +               //ieee80211_reset_ap_probe(sdata);
>> >>         }
>> >>
>> >>         /*
>> >>
>> >>
>> >>
>> >> >>
>> >> >> poma
>> >> >>
>> >> >>
>> >> >> --
>> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> in
>> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> --
>> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> in
>> >> the body of a message to majordomo@vger.kernel.org
>> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Lauren?iu Nicola Oct. 23, 2014, 4:02 p.m. UTC | #5
Sorry, but I only saw a two-line change [1] to
`ieee80211_rx_mgmt_beacon` (which already had a log message). Am I
missing something?

[1] http://www.spinics.net/lists/linux-wireless/msg128340.html

Laurentiu

On Thu, Oct 23, 2014, at 11:07, Emmanuel Grumbach wrote:
> On Thu, Oct 23, 2014 at 10:30 AM, Lauren?iu Nicola <lnicola@dend.ro>
> wrote:
> > I did; the card still gets disconnected and the message doesn't show up
> > in dmesg.
> >
> 
> You had *none* of the many prints I added in the log?
> 
> That seems really weird...
> 
> > Laurentiu
> >
> > On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
> >> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
> >> wrote:
> >> > Nope. It seems that code doesn't get executed when my issue occurs (or
> >> > in my five or ten minutes of uptime). I've seen
> >> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
> >> > but (if I'm not wrong) not on every disconnect.
> >> >
> >> > And as far as I can tell, force_cam is set to true.
> >>
> >> Can you please try with the patch attached and send the logs?
> >> I again need MAC80211_MLME_DEBUG.
> >>
> >> Thanks.
> >>
> >> >
> >> > Laurentiu
> >> >
> >> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
> >> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> wrote:
> >> >> > Yep! `scb_timeout` is 60 on my router.
> >> >> >
> >> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
> >> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
> >> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
> >> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
> >> >> >> > This is a Broadcom based device, so it should behave in the same way as
> >> >> >> > other APs/Routers running the Broadcom drivers.
> >> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
> >> >> >> > BlockAckReq or Action frame from a station that's not associated, so
> >> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
> >> >> >> > why that doesn't show up in the log though.
> >> >> >> >
> >> >> >>
> >> >> >> Whether this might refer to the Station Control Block Timeout value
> >> >> >>
> >> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
> >> >> >> ...
> >> >> >> scb_timeout
> >> >> >>
> >> >> >> AP only: inactivity timeout value for authenticated stas
> >> >> >>
> >> >>
> >> >> Actually, mac80211 should be probing the AP every 30 seconds but a
> >> >> beacon might abort the probe...
> >> >> Can you try something like this:
> >> >>
> >> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> >> >> index 75df184..c9db7cf 100644
> >> >> --- a/net/mac80211/mlme.c
> >> >> +++ b/net/mac80211/mlme.c
> >> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
> >> >> ieee80211_sub_if_data *sdata,
> >> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
> >> >>                 mlme_dbg_ratelimited(sdata,
> >> >>                                      "cancelling AP probe due to a
> >> >> received beacon\n");
> >> >> -               ieee80211_reset_ap_probe(sdata);
> >> >> +               pr_err("Not cancelling the probe to make sure the AP
> >> >> hears us from time to time\n");
> >> >> +               //ieee80211_reset_ap_probe(sdata);
> >> >>         }
> >> >>
> >> >>         /*
> >> >>
> >> >>
> >> >>
> >> >> >>
> >> >> >> poma
> >> >> >>
> >> >> >>
> >> >> >> --
> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> in
> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> --
> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> in
> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Emmanuel Grumbach Oct. 23, 2014, 4:46 p.m. UTC | #6
On Thu, Oct 23, 2014 at 7:02 PM, Lauren?iu Nicola <lnicola@dend.ro> wrote:
> Sorry, but I only saw a two-line change [1] to
> `ieee80211_rx_mgmt_beacon` (which already had a log message). Am I
> missing something?
>
> [1] http://www.spinics.net/lists/linux-wireless/msg128340.html
>

No - you are not. I did miss something...I forgot to attach the patch.
Here you go.

> Laurentiu
>
> On Thu, Oct 23, 2014, at 11:07, Emmanuel Grumbach wrote:
>> On Thu, Oct 23, 2014 at 10:30 AM, Lauren?iu Nicola <lnicola@dend.ro>
>> wrote:
>> > I did; the card still gets disconnected and the message doesn't show up
>> > in dmesg.
>> >
>>
>> You had *none* of the many prints I added in the log?
>>
>> That seems really weird...
>>
>> > Laurentiu
>> >
>> > On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
>> >> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> wrote:
>> >> > Nope. It seems that code doesn't get executed when my issue occurs (or
>> >> > in my five or ten minutes of uptime). I've seen
>> >> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
>> >> > but (if I'm not wrong) not on every disconnect.
>> >> >
>> >> > And as far as I can tell, force_cam is set to true.
>> >>
>> >> Can you please try with the patch attached and send the logs?
>> >> I again need MAC80211_MLME_DEBUG.
>> >>
>> >> Thanks.
>> >>
>> >> >
>> >> > Laurentiu
>> >> >
>> >> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
>> >> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> >> wrote:
>> >> >> > Yep! `scb_timeout` is 60 on my router.
>> >> >> >
>> >> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
>> >> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
>> >> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
>> >> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
>> >> >> >> > This is a Broadcom based device, so it should behave in the same way as
>> >> >> >> > other APs/Routers running the Broadcom drivers.
>> >> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
>> >> >> >> > BlockAckReq or Action frame from a station that's not associated, so
>> >> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
>> >> >> >> > why that doesn't show up in the log though.
>> >> >> >> >
>> >> >> >>
>> >> >> >> Whether this might refer to the Station Control Block Timeout value
>> >> >> >>
>> >> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
>> >> >> >> ...
>> >> >> >> scb_timeout
>> >> >> >>
>> >> >> >> AP only: inactivity timeout value for authenticated stas
>> >> >> >>
>> >> >>
>> >> >> Actually, mac80211 should be probing the AP every 30 seconds but a
>> >> >> beacon might abort the probe...
>> >> >> Can you try something like this:
>> >> >>
>> >> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
>> >> >> index 75df184..c9db7cf 100644
>> >> >> --- a/net/mac80211/mlme.c
>> >> >> +++ b/net/mac80211/mlme.c
>> >> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
>> >> >> ieee80211_sub_if_data *sdata,
>> >> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
>> >> >>                 mlme_dbg_ratelimited(sdata,
>> >> >>                                      "cancelling AP probe due to a
>> >> >> received beacon\n");
>> >> >> -               ieee80211_reset_ap_probe(sdata);
>> >> >> +               pr_err("Not cancelling the probe to make sure the AP
>> >> >> hears us from time to time\n");
>> >> >> +               //ieee80211_reset_ap_probe(sdata);
>> >> >>         }
>> >> >>
>> >> >>         /*
>> >> >>
>> >> >>
>> >> >>
>> >> >> >>
>> >> >> >> poma
>> >> >> >>
>> >> >> >>
>> >> >> >> --
>> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> >> in
>> >> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> >> --
>> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> in
>> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> --
>> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> in
>> >> the body of a message to majordomo@vger.kernel.org
>> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
Lauren?iu Nicola Oct. 23, 2014, 5:38 p.m. UTC | #7
Okay. I'm running 3.17.1, so the line numbers might not be the ones
you're expecting:

patching file net/mac80211/mlme.c
Hunk #1 succeeded at 128 (offset -1 lines).
Hunk #2 succeeded at 137 (offset -1 lines).
Hunk #3 succeeded at 1875 (offset -209 lines).
Hunk #4 succeeded at 1886 (offset -207 lines).
Hunk #5 succeeded at 1908 (offset -207 lines).
Hunk #6 succeeded at 1924 (offset -244 lines). 

dmesg output is at https://bpaste.net/show/649277aaada8 .

Laurentiu

On Thu, Oct 23, 2014, at 19:46, Emmanuel Grumbach wrote:
> On Thu, Oct 23, 2014 at 7:02 PM, Lauren?iu Nicola <lnicola@dend.ro>
> wrote:
> > Sorry, but I only saw a two-line change [1] to
> > `ieee80211_rx_mgmt_beacon` (which already had a log message). Am I
> > missing something?
> >
> > [1] http://www.spinics.net/lists/linux-wireless/msg128340.html
> >
> 
> No - you are not. I did miss something...I forgot to attach the patch.
> Here you go.
> 
> > Laurentiu
> >
> > On Thu, Oct 23, 2014, at 11:07, Emmanuel Grumbach wrote:
> >> On Thu, Oct 23, 2014 at 10:30 AM, Lauren?iu Nicola <lnicola@dend.ro>
> >> wrote:
> >> > I did; the card still gets disconnected and the message doesn't show up
> >> > in dmesg.
> >> >
> >>
> >> You had *none* of the many prints I added in the log?
> >>
> >> That seems really weird...
> >>
> >> > Laurentiu
> >> >
> >> > On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
> >> >> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> wrote:
> >> >> > Nope. It seems that code doesn't get executed when my issue occurs (or
> >> >> > in my five or ten minutes of uptime). I've seen
> >> >> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
> >> >> > but (if I'm not wrong) not on every disconnect.
> >> >> >
> >> >> > And as far as I can tell, force_cam is set to true.
> >> >>
> >> >> Can you please try with the patch attached and send the logs?
> >> >> I again need MAC80211_MLME_DEBUG.
> >> >>
> >> >> Thanks.
> >> >>
> >> >> >
> >> >> > Laurentiu
> >> >> >
> >> >> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
> >> >> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> >> wrote:
> >> >> >> > Yep! `scb_timeout` is 60 on my router.
> >> >> >> >
> >> >> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
> >> >> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
> >> >> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
> >> >> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
> >> >> >> >> > This is a Broadcom based device, so it should behave in the same way as
> >> >> >> >> > other APs/Routers running the Broadcom drivers.
> >> >> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
> >> >> >> >> > BlockAckReq or Action frame from a station that's not associated, so
> >> >> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
> >> >> >> >> > why that doesn't show up in the log though.
> >> >> >> >> >
> >> >> >> >>
> >> >> >> >> Whether this might refer to the Station Control Block Timeout value
> >> >> >> >>
> >> >> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
> >> >> >> >> ...
> >> >> >> >> scb_timeout
> >> >> >> >>
> >> >> >> >> AP only: inactivity timeout value for authenticated stas
> >> >> >> >>
> >> >> >>
> >> >> >> Actually, mac80211 should be probing the AP every 30 seconds but a
> >> >> >> beacon might abort the probe...
> >> >> >> Can you try something like this:
> >> >> >>
> >> >> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> >> >> >> index 75df184..c9db7cf 100644
> >> >> >> --- a/net/mac80211/mlme.c
> >> >> >> +++ b/net/mac80211/mlme.c
> >> >> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
> >> >> >> ieee80211_sub_if_data *sdata,
> >> >> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
> >> >> >>                 mlme_dbg_ratelimited(sdata,
> >> >> >>                                      "cancelling AP probe due to a
> >> >> >> received beacon\n");
> >> >> >> -               ieee80211_reset_ap_probe(sdata);
> >> >> >> +               pr_err("Not cancelling the probe to make sure the AP
> >> >> >> hears us from time to time\n");
> >> >> >> +               //ieee80211_reset_ap_probe(sdata);
> >> >> >>         }
> >> >> >>
> >> >> >>         /*
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> >>
> >> >> >> >> poma
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> >> in
> >> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> >> --
> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> in
> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> --
> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> in
> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> --
> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> in
> >> the body of a message to majordomo@vger.kernel.org
> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Email had 1 attachment:
> + PROBE.patch
>   3k (application/octet-stream)
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Emmanuel Grumbach Oct. 23, 2014, 7:28 p.m. UTC | #8
On Thu, Oct 23, 2014 at 8:38 PM, Lauren?iu Nicola <lnicola@dend.ro> wrote:
> Okay. I'm running 3.17.1, so the line numbers might not be the ones
> you're expecting:
>
> patching file net/mac80211/mlme.c
> Hunk #1 succeeded at 128 (offset -1 lines).
> Hunk #2 succeeded at 137 (offset -1 lines).
> Hunk #3 succeeded at 1875 (offset -209 lines).
> Hunk #4 succeeded at 1886 (offset -207 lines).
> Hunk #5 succeeded at 1908 (offset -207 lines).
> Hunk #6 succeeded at 1924 (offset -244 lines).
>
> dmesg output is at https://bpaste.net/show/649277aaada8 .

can you please test the patch attached?

(remove the previous one first please)

>
> Laurentiu
>
> On Thu, Oct 23, 2014, at 19:46, Emmanuel Grumbach wrote:
>> On Thu, Oct 23, 2014 at 7:02 PM, Lauren?iu Nicola <lnicola@dend.ro>
>> wrote:
>> > Sorry, but I only saw a two-line change [1] to
>> > `ieee80211_rx_mgmt_beacon` (which already had a log message). Am I
>> > missing something?
>> >
>> > [1] http://www.spinics.net/lists/linux-wireless/msg128340.html
>> >
>>
>> No - you are not. I did miss something...I forgot to attach the patch.
>> Here you go.
>>
>> > Laurentiu
>> >
>> > On Thu, Oct 23, 2014, at 11:07, Emmanuel Grumbach wrote:
>> >> On Thu, Oct 23, 2014 at 10:30 AM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> wrote:
>> >> > I did; the card still gets disconnected and the message doesn't show up
>> >> > in dmesg.
>> >> >
>> >>
>> >> You had *none* of the many prints I added in the log?
>> >>
>> >> That seems really weird...
>> >>
>> >> > Laurentiu
>> >> >
>> >> > On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
>> >> >> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> >> wrote:
>> >> >> > Nope. It seems that code doesn't get executed when my issue occurs (or
>> >> >> > in my five or ten minutes of uptime). I've seen
>> >> >> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
>> >> >> > but (if I'm not wrong) not on every disconnect.
>> >> >> >
>> >> >> > And as far as I can tell, force_cam is set to true.
>> >> >>
>> >> >> Can you please try with the patch attached and send the logs?
>> >> >> I again need MAC80211_MLME_DEBUG.
>> >> >>
>> >> >> Thanks.
>> >> >>
>> >> >> >
>> >> >> > Laurentiu
>> >> >> >
>> >> >> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
>> >> >> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> >> >> wrote:
>> >> >> >> > Yep! `scb_timeout` is 60 on my router.
>> >> >> >> >
>> >> >> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
>> >> >> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
>> >> >> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
>> >> >> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
>> >> >> >> >> > This is a Broadcom based device, so it should behave in the same way as
>> >> >> >> >> > other APs/Routers running the Broadcom drivers.
>> >> >> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
>> >> >> >> >> > BlockAckReq or Action frame from a station that's not associated, so
>> >> >> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
>> >> >> >> >> > why that doesn't show up in the log though.
>> >> >> >> >> >
>> >> >> >> >>
>> >> >> >> >> Whether this might refer to the Station Control Block Timeout value
>> >> >> >> >>
>> >> >> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
>> >> >> >> >> ...
>> >> >> >> >> scb_timeout
>> >> >> >> >>
>> >> >> >> >> AP only: inactivity timeout value for authenticated stas
>> >> >> >> >>
>> >> >> >>
>> >> >> >> Actually, mac80211 should be probing the AP every 30 seconds but a
>> >> >> >> beacon might abort the probe...
>> >> >> >> Can you try something like this:
>> >> >> >>
>> >> >> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
>> >> >> >> index 75df184..c9db7cf 100644
>> >> >> >> --- a/net/mac80211/mlme.c
>> >> >> >> +++ b/net/mac80211/mlme.c
>> >> >> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
>> >> >> >> ieee80211_sub_if_data *sdata,
>> >> >> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
>> >> >> >>                 mlme_dbg_ratelimited(sdata,
>> >> >> >>                                      "cancelling AP probe due to a
>> >> >> >> received beacon\n");
>> >> >> >> -               ieee80211_reset_ap_probe(sdata);
>> >> >> >> +               pr_err("Not cancelling the probe to make sure the AP
>> >> >> >> hears us from time to time\n");
>> >> >> >> +               //ieee80211_reset_ap_probe(sdata);
>> >> >> >>         }
>> >> >> >>
>> >> >> >>         /*
>> >> >> >>
>> >> >> >>
>> >> >> >>
>> >> >> >> >>
>> >> >> >> >> poma
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> --
>> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> >> >> in
>> >> >> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> >> >> --
>> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> >> in
>> >> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> >> --
>> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> in
>> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> --
>> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> in
>> >> the body of a message to majordomo@vger.kernel.org
>> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Email had 1 attachment:
>> + PROBE.patch
>>   3k (application/octet-stream)
Lauren?iu Nicola Oct. 23, 2014, 7:42 p.m. UTC | #9
Doesn't seem to help https://bpaste.net/show/68e1a6b33689.

Laurentiu

On Thu, Oct 23, 2014, at 22:28, Emmanuel Grumbach wrote:
> On Thu, Oct 23, 2014 at 8:38 PM, Lauren?iu Nicola <lnicola@dend.ro>
> wrote:
> > Okay. I'm running 3.17.1, so the line numbers might not be the ones
> > you're expecting:
> >
> > patching file net/mac80211/mlme.c
> > Hunk #1 succeeded at 128 (offset -1 lines).
> > Hunk #2 succeeded at 137 (offset -1 lines).
> > Hunk #3 succeeded at 1875 (offset -209 lines).
> > Hunk #4 succeeded at 1886 (offset -207 lines).
> > Hunk #5 succeeded at 1908 (offset -207 lines).
> > Hunk #6 succeeded at 1924 (offset -244 lines).
> >
> > dmesg output is at https://bpaste.net/show/649277aaada8 .
> 
> can you please test the patch attached?
> 
> (remove the previous one first please)
> 
> >
> > Laurentiu
> >
> > On Thu, Oct 23, 2014, at 19:46, Emmanuel Grumbach wrote:
> >> On Thu, Oct 23, 2014 at 7:02 PM, Lauren?iu Nicola <lnicola@dend.ro>
> >> wrote:
> >> > Sorry, but I only saw a two-line change [1] to
> >> > `ieee80211_rx_mgmt_beacon` (which already had a log message). Am I
> >> > missing something?
> >> >
> >> > [1] http://www.spinics.net/lists/linux-wireless/msg128340.html
> >> >
> >>
> >> No - you are not. I did miss something...I forgot to attach the patch.
> >> Here you go.
> >>
> >> > Laurentiu
> >> >
> >> > On Thu, Oct 23, 2014, at 11:07, Emmanuel Grumbach wrote:
> >> >> On Thu, Oct 23, 2014 at 10:30 AM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> wrote:
> >> >> > I did; the card still gets disconnected and the message doesn't show up
> >> >> > in dmesg.
> >> >> >
> >> >>
> >> >> You had *none* of the many prints I added in the log?
> >> >>
> >> >> That seems really weird...
> >> >>
> >> >> > Laurentiu
> >> >> >
> >> >> > On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
> >> >> >> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> >> wrote:
> >> >> >> > Nope. It seems that code doesn't get executed when my issue occurs (or
> >> >> >> > in my five or ten minutes of uptime). I've seen
> >> >> >> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
> >> >> >> > but (if I'm not wrong) not on every disconnect.
> >> >> >> >
> >> >> >> > And as far as I can tell, force_cam is set to true.
> >> >> >>
> >> >> >> Can you please try with the patch attached and send the logs?
> >> >> >> I again need MAC80211_MLME_DEBUG.
> >> >> >>
> >> >> >> Thanks.
> >> >> >>
> >> >> >> >
> >> >> >> > Laurentiu
> >> >> >> >
> >> >> >> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
> >> >> >> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> >> >> wrote:
> >> >> >> >> > Yep! `scb_timeout` is 60 on my router.
> >> >> >> >> >
> >> >> >> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
> >> >> >> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
> >> >> >> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
> >> >> >> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
> >> >> >> >> >> > This is a Broadcom based device, so it should behave in the same way as
> >> >> >> >> >> > other APs/Routers running the Broadcom drivers.
> >> >> >> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
> >> >> >> >> >> > BlockAckReq or Action frame from a station that's not associated, so
> >> >> >> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
> >> >> >> >> >> > why that doesn't show up in the log though.
> >> >> >> >> >> >
> >> >> >> >> >>
> >> >> >> >> >> Whether this might refer to the Station Control Block Timeout value
> >> >> >> >> >>
> >> >> >> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
> >> >> >> >> >> ...
> >> >> >> >> >> scb_timeout
> >> >> >> >> >>
> >> >> >> >> >> AP only: inactivity timeout value for authenticated stas
> >> >> >> >> >>
> >> >> >> >>
> >> >> >> >> Actually, mac80211 should be probing the AP every 30 seconds but a
> >> >> >> >> beacon might abort the probe...
> >> >> >> >> Can you try something like this:
> >> >> >> >>
> >> >> >> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> >> >> >> >> index 75df184..c9db7cf 100644
> >> >> >> >> --- a/net/mac80211/mlme.c
> >> >> >> >> +++ b/net/mac80211/mlme.c
> >> >> >> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
> >> >> >> >> ieee80211_sub_if_data *sdata,
> >> >> >> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
> >> >> >> >>                 mlme_dbg_ratelimited(sdata,
> >> >> >> >>                                      "cancelling AP probe due to a
> >> >> >> >> received beacon\n");
> >> >> >> >> -               ieee80211_reset_ap_probe(sdata);
> >> >> >> >> +               pr_err("Not cancelling the probe to make sure the AP
> >> >> >> >> hears us from time to time\n");
> >> >> >> >> +               //ieee80211_reset_ap_probe(sdata);
> >> >> >> >>         }
> >> >> >> >>
> >> >> >> >>         /*
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> poma
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> --
> >> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> >> >> in
> >> >> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> >> >> --
> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> >> in
> >> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> >> --
> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> in
> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> --
> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> in
> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> Email had 1 attachment:
> >> + PROBE.patch
> >>   3k (application/octet-stream)
> Email had 1 attachment:
> + a.patch
>   3k (application/octet-stream)
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Emmanuel Grumbach Oct. 23, 2014, 7:55 p.m. UTC | #10
On Thu, Oct 23, 2014 at 10:42 PM, Lauren?iu Nicola <lnicola@dend.ro> wrote:
> Doesn't seem to help https://bpaste.net/show/68e1a6b33689.

ok - let me re-add the logs...


>
> Laurentiu
>
> On Thu, Oct 23, 2014, at 22:28, Emmanuel Grumbach wrote:
>> On Thu, Oct 23, 2014 at 8:38 PM, Lauren?iu Nicola <lnicola@dend.ro>
>> wrote:
>> > Okay. I'm running 3.17.1, so the line numbers might not be the ones
>> > you're expecting:
>> >
>> > patching file net/mac80211/mlme.c
>> > Hunk #1 succeeded at 128 (offset -1 lines).
>> > Hunk #2 succeeded at 137 (offset -1 lines).
>> > Hunk #3 succeeded at 1875 (offset -209 lines).
>> > Hunk #4 succeeded at 1886 (offset -207 lines).
>> > Hunk #5 succeeded at 1908 (offset -207 lines).
>> > Hunk #6 succeeded at 1924 (offset -244 lines).
>> >
>> > dmesg output is at https://bpaste.net/show/649277aaada8 .
>>
>> can you please test the patch attached?
>>
>> (remove the previous one first please)
>>
>> >
>> > Laurentiu
>> >
>> > On Thu, Oct 23, 2014, at 19:46, Emmanuel Grumbach wrote:
>> >> On Thu, Oct 23, 2014 at 7:02 PM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> wrote:
>> >> > Sorry, but I only saw a two-line change [1] to
>> >> > `ieee80211_rx_mgmt_beacon` (which already had a log message). Am I
>> >> > missing something?
>> >> >
>> >> > [1] http://www.spinics.net/lists/linux-wireless/msg128340.html
>> >> >
>> >>
>> >> No - you are not. I did miss something...I forgot to attach the patch.
>> >> Here you go.
>> >>
>> >> > Laurentiu
>> >> >
>> >> > On Thu, Oct 23, 2014, at 11:07, Emmanuel Grumbach wrote:
>> >> >> On Thu, Oct 23, 2014 at 10:30 AM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> >> wrote:
>> >> >> > I did; the card still gets disconnected and the message doesn't show up
>> >> >> > in dmesg.
>> >> >> >
>> >> >>
>> >> >> You had *none* of the many prints I added in the log?
>> >> >>
>> >> >> That seems really weird...
>> >> >>
>> >> >> > Laurentiu
>> >> >> >
>> >> >> > On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
>> >> >> >> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> >> >> wrote:
>> >> >> >> > Nope. It seems that code doesn't get executed when my issue occurs (or
>> >> >> >> > in my five or ten minutes of uptime). I've seen
>> >> >> >> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
>> >> >> >> > but (if I'm not wrong) not on every disconnect.
>> >> >> >> >
>> >> >> >> > And as far as I can tell, force_cam is set to true.
>> >> >> >>
>> >> >> >> Can you please try with the patch attached and send the logs?
>> >> >> >> I again need MAC80211_MLME_DEBUG.
>> >> >> >>
>> >> >> >> Thanks.
>> >> >> >>
>> >> >> >> >
>> >> >> >> > Laurentiu
>> >> >> >> >
>> >> >> >> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
>> >> >> >> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
>> >> >> >> >> wrote:
>> >> >> >> >> > Yep! `scb_timeout` is 60 on my router.
>> >> >> >> >> >
>> >> >> >> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
>> >> >> >> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
>> >> >> >> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
>> >> >> >> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
>> >> >> >> >> >> > This is a Broadcom based device, so it should behave in the same way as
>> >> >> >> >> >> > other APs/Routers running the Broadcom drivers.
>> >> >> >> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
>> >> >> >> >> >> > BlockAckReq or Action frame from a station that's not associated, so
>> >> >> >> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
>> >> >> >> >> >> > why that doesn't show up in the log though.
>> >> >> >> >> >> >
>> >> >> >> >> >>
>> >> >> >> >> >> Whether this might refer to the Station Control Block Timeout value
>> >> >> >> >> >>
>> >> >> >> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
>> >> >> >> >> >> ...
>> >> >> >> >> >> scb_timeout
>> >> >> >> >> >>
>> >> >> >> >> >> AP only: inactivity timeout value for authenticated stas
>> >> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> Actually, mac80211 should be probing the AP every 30 seconds but a
>> >> >> >> >> beacon might abort the probe...
>> >> >> >> >> Can you try something like this:
>> >> >> >> >>
>> >> >> >> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
>> >> >> >> >> index 75df184..c9db7cf 100644
>> >> >> >> >> --- a/net/mac80211/mlme.c
>> >> >> >> >> +++ b/net/mac80211/mlme.c
>> >> >> >> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
>> >> >> >> >> ieee80211_sub_if_data *sdata,
>> >> >> >> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
>> >> >> >> >>                 mlme_dbg_ratelimited(sdata,
>> >> >> >> >>                                      "cancelling AP probe due to a
>> >> >> >> >> received beacon\n");
>> >> >> >> >> -               ieee80211_reset_ap_probe(sdata);
>> >> >> >> >> +               pr_err("Not cancelling the probe to make sure the AP
>> >> >> >> >> hears us from time to time\n");
>> >> >> >> >> +               //ieee80211_reset_ap_probe(sdata);
>> >> >> >> >>         }
>> >> >> >> >>
>> >> >> >> >>         /*
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >> poma
>> >> >> >> >> >>
>> >> >> >> >> >>
>> >> >> >> >> >> --
>> >> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> >> >> >> in
>> >> >> >> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> >> >> >> --
>> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> >> >> in
>> >> >> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> >> >> --
>> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> >> in
>> >> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> >> --
>> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
>> >> >> in
>> >> >> the body of a message to majordomo@vger.kernel.org
>> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> >> Email had 1 attachment:
>> >> + PROBE.patch
>> >>   3k (application/octet-stream)
>> Email had 1 attachment:
>> + a.patch
>>   3k (application/octet-stream)
Lauren?iu Nicola Oct. 23, 2014, 8:07 p.m. UTC | #11
https://bpaste.net/show/5cc48256d952

On Thu, Oct 23, 2014, at 22:55, Emmanuel Grumbach wrote:
> On Thu, Oct 23, 2014 at 10:42 PM, Lauren?iu Nicola <lnicola@dend.ro>
> wrote:
> > Doesn't seem to help https://bpaste.net/show/68e1a6b33689.
> 
> ok - let me re-add the logs...
> 
> 
> >
> > Laurentiu
> >
> > On Thu, Oct 23, 2014, at 22:28, Emmanuel Grumbach wrote:
> >> On Thu, Oct 23, 2014 at 8:38 PM, Lauren?iu Nicola <lnicola@dend.ro>
> >> wrote:
> >> > Okay. I'm running 3.17.1, so the line numbers might not be the ones
> >> > you're expecting:
> >> >
> >> > patching file net/mac80211/mlme.c
> >> > Hunk #1 succeeded at 128 (offset -1 lines).
> >> > Hunk #2 succeeded at 137 (offset -1 lines).
> >> > Hunk #3 succeeded at 1875 (offset -209 lines).
> >> > Hunk #4 succeeded at 1886 (offset -207 lines).
> >> > Hunk #5 succeeded at 1908 (offset -207 lines).
> >> > Hunk #6 succeeded at 1924 (offset -244 lines).
> >> >
> >> > dmesg output is at https://bpaste.net/show/649277aaada8 .
> >>
> >> can you please test the patch attached?
> >>
> >> (remove the previous one first please)
> >>
> >> >
> >> > Laurentiu
> >> >
> >> > On Thu, Oct 23, 2014, at 19:46, Emmanuel Grumbach wrote:
> >> >> On Thu, Oct 23, 2014 at 7:02 PM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> wrote:
> >> >> > Sorry, but I only saw a two-line change [1] to
> >> >> > `ieee80211_rx_mgmt_beacon` (which already had a log message). Am I
> >> >> > missing something?
> >> >> >
> >> >> > [1] http://www.spinics.net/lists/linux-wireless/msg128340.html
> >> >> >
> >> >>
> >> >> No - you are not. I did miss something...I forgot to attach the patch.
> >> >> Here you go.
> >> >>
> >> >> > Laurentiu
> >> >> >
> >> >> > On Thu, Oct 23, 2014, at 11:07, Emmanuel Grumbach wrote:
> >> >> >> On Thu, Oct 23, 2014 at 10:30 AM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> >> wrote:
> >> >> >> > I did; the card still gets disconnected and the message doesn't show up
> >> >> >> > in dmesg.
> >> >> >> >
> >> >> >>
> >> >> >> You had *none* of the many prints I added in the log?
> >> >> >>
> >> >> >> That seems really weird...
> >> >> >>
> >> >> >> > Laurentiu
> >> >> >> >
> >> >> >> > On Thu, Oct 23, 2014, at 08:21, Emmanuel Grumbach wrote:
> >> >> >> >> On Thu, Oct 23, 2014 at 12:53 AM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> >> >> wrote:
> >> >> >> >> > Nope. It seems that code doesn't get executed when my issue occurs (or
> >> >> >> >> > in my five or ten minutes of uptime). I've seen
> >> >> >> >> > `ieee80211_reset_ap_probe` get called by `ieee80211_rx_mgmt_probe_resp`,
> >> >> >> >> > but (if I'm not wrong) not on every disconnect.
> >> >> >> >> >
> >> >> >> >> > And as far as I can tell, force_cam is set to true.
> >> >> >> >>
> >> >> >> >> Can you please try with the patch attached and send the logs?
> >> >> >> >> I again need MAC80211_MLME_DEBUG.
> >> >> >> >>
> >> >> >> >> Thanks.
> >> >> >> >>
> >> >> >> >> >
> >> >> >> >> > Laurentiu
> >> >> >> >> >
> >> >> >> >> > On Wed, Oct 22, 2014, at 12:10, Emmanuel Grumbach wrote:
> >> >> >> >> >> On Tue, Oct 21, 2014 at 10:56 PM, Lauren?iu Nicola <lnicola@dend.ro>
> >> >> >> >> >> wrote:
> >> >> >> >> >> > Yep! `scb_timeout` is 60 on my router.
> >> >> >> >> >> >
> >> >> >> >> >> > On Tue, Oct 21, 2014, at 14:00, poma wrote:
> >> >> >> >> >> >> On 21.10.2014 10:35, Felix Fietkau wrote:
> >> >> >> >> >> >> > On 2014-10-21 10:23, Lauren?iu Nicola wrote:
> >> >> >> >> >> >> >> It's an ASUS RT-N66U running NEWD-2/K3X from r24160.
> >> >> >> >> >> >> > This is a Broadcom based device, so it should behave in the same way as
> >> >> >> >> >> >> > other APs/Routers running the Broadcom drivers.
> >> >> >> >> >> >> > The driver should only send Reason 7 when receiving a PS-Poll, BlockAck,
> >> >> >> >> >> >> > BlockAckReq or Action frame from a station that's not associated, so
> >> >> >> >> >> >> > probably it has already kicked out your iwlwifi client earlier. Not sure
> >> >> >> >> >> >> > why that doesn't show up in the log though.
> >> >> >> >> >> >> >
> >> >> >> >> >> >>
> >> >> >> >> >> >> Whether this might refer to the Station Control Block Timeout value
> >> >> >> >> >> >>
> >> >> >> >> >> >> http://www.dd-wrt.com/wiki/index.php/Wl#scb_timeout
> >> >> >> >> >> >> ...
> >> >> >> >> >> >> scb_timeout
> >> >> >> >> >> >>
> >> >> >> >> >> >> AP only: inactivity timeout value for authenticated stas
> >> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> Actually, mac80211 should be probing the AP every 30 seconds but a
> >> >> >> >> >> beacon might abort the probe...
> >> >> >> >> >> Can you try something like this:
> >> >> >> >> >>
> >> >> >> >> >> diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
> >> >> >> >> >> index 75df184..c9db7cf 100644
> >> >> >> >> >> --- a/net/mac80211/mlme.c
> >> >> >> >> >> +++ b/net/mac80211/mlme.c
> >> >> >> >> >> @@ -3295,7 +3295,8 @@ static void ieee80211_rx_mgmt_beacon(struct
> >> >> >> >> >> ieee80211_sub_if_data *sdata,
> >> >> >> >> >>         if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
> >> >> >> >> >>                 mlme_dbg_ratelimited(sdata,
> >> >> >> >> >>                                      "cancelling AP probe due to a
> >> >> >> >> >> received beacon\n");
> >> >> >> >> >> -               ieee80211_reset_ap_probe(sdata);
> >> >> >> >> >> +               pr_err("Not cancelling the probe to make sure the AP
> >> >> >> >> >> hears us from time to time\n");
> >> >> >> >> >> +               //ieee80211_reset_ap_probe(sdata);
> >> >> >> >> >>         }
> >> >> >> >> >>
> >> >> >> >> >>         /*
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >>
> >> >> >> >> >> >>
> >> >> >> >> >> >> poma
> >> >> >> >> >> >>
> >> >> >> >> >> >>
> >> >> >> >> >> >> --
> >> >> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> >> >> >> in
> >> >> >> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> >> >> >> --
> >> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> >> >> in
> >> >> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> >> >> --
> >> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> >> in
> >> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> >> --
> >> >> >> To unsubscribe from this list: send the line "unsubscribe linux-wireless"
> >> >> >> in
> >> >> >> the body of a message to majordomo@vger.kernel.org
> >> >> >> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> >> >> Email had 1 attachment:
> >> >> + PROBE.patch
> >> >>   3k (application/octet-stream)
> >> Email had 1 attachment:
> >> + a.patch
> >>   3k (application/octet-stream)
> Email had 1 attachment:
> + a.patch
>   6k (application/octet-stream)
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 75df184..c9db7cf 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -3295,7 +3295,8 @@  static void ieee80211_rx_mgmt_beacon(struct
ieee80211_sub_if_data *sdata,
        if (ifmgd->flags & IEEE80211_STA_CONNECTION_POLL) {
                mlme_dbg_ratelimited(sdata,
                                     "cancelling AP probe due to a
received beacon\n");
-               ieee80211_reset_ap_probe(sdata);
+               pr_err("Not cancelling the probe to make sure the AP
hears us from time to time\n");
+               //ieee80211_reset_ap_probe(sdata);