All of lore.kernel.org
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: Bob Copeland <me@bobcopeland.com>
Cc: linux-wireless@vger.kernel.org
Subject: Re: [PATCH] mac80211: remove ignore_plink_timer flag
Date: Wed, 04 Jun 2014 16:08:28 +0200	[thread overview]
Message-ID: <1401890908.6079.32.camel@jlt4.sipsolutions.net> (raw)
In-Reply-To: <1401888451-9612-1-git-send-email-me@bobcopeland.com> (sfid-20140604_152812_599798_BB7E8B6B)

On Wed, 2014-06-04 at 09:27 -0400, Bob Copeland wrote:
> The mesh_plink code is doing some interesting things with the
> ignore_plink_timer flag.  It seems the original intent was to
> handle this race:
> 
> cpu 0                           cpu 1
> -----                           -----
>                                 start timer handler for state X
> acquire sta_lock
> change state from X to Y
> mod_timer() / del_timer()
> release sta_lock
>                                 acquire sta_lock
>                                 execute state Y timer too soon
> 
> However, using the mod_timer()/del_timer() return values to
> detect these cases is broken.  As a result, timers get ignored
> unnecessarily, and stations can get stuck in the peering state
> machine.
> 
> Instead, we can detect the case by looking at the timer expiration.
> In the case of del_timer, just ignore the timers in the following
> (LISTEN/ESTAB) states since they won't have timers anyway.

I'm not entirely sure about the expiration thing - doesn't seem
different from the outside flag? But anyway - applied.

johannes


  reply	other threads:[~2014-06-04 14:08 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-04 13:27 [PATCH] mac80211: remove ignore_plink_timer flag Bob Copeland
2014-06-04 14:08 ` Johannes Berg [this message]
2014-06-04 14:53   ` Bob Copeland

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=1401890908.6079.32.camel@jlt4.sipsolutions.net \
    --to=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=me@bobcopeland.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.