linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: Michal Kazior <michal.kazior@tieto.com>
Cc: linux-wireless <linux-wireless@vger.kernel.org>
Subject: Re: [PATCH 3/3] mac80211: compute chanctx refcount dynamically
Date: Wed, 19 Mar 2014 15:05:14 +0100	[thread overview]
Message-ID: <1395237914.4142.13.camel@jlt4.sipsolutions.net> (raw)
In-Reply-To: <CA+BoTQnnWfNxeo6rtATU8qgj=dk9Kkx36GVewDr7p8OVFfcxNA@mail.gmail.com> (sfid-20140311_143307_127674_73F11729)

On Tue, 2014-03-11 at 14:33 +0100, Michal Kazior wrote:

> >> I'm planning on adding `struct list_head` to sdata and chanctx to be
> >> able to iterate over assigned (and reserved, in the future) chanctx.
> >> What do you think? Do you have other ideas?
> >
> > I guess that seems reasonable - not sure why you'd want the reserved
> > one? Some of the maintenance there might be tricky?
> 
> For multi-vif we need to be able to track list of interfaces that have
> a reservation. This is needed for example for chandef calculation
> (e.g. to see if you can start a new vif on given chanctx that is part
> of a reservation already, etc).
> 
> It's also necessary so you can synchronize CSA across interfaces with
> the chanctx reservation that happen "in place" when you're out of
> max_num_different_channels. In that case you must unassign all
> interfaces, free chanctx, create new chanctx, and then assign the
> reservation interfaces.
> 
> Actually I think there's also one thing that might benefit from
> chanctx-vif list tracking: ieee80211_recalc_chanctx_chantype(). It
> seems to complain with WARN_ON splat when I reload driver when more
> than 1 vif is running because it doesn't find a non-NULL `compat`
> chandef (rightfully so as local->interfaces is empty at that point due
> to ieee80211_remove_interfaces).

Ok, makes sense. I guess I don't see any easier solution either.

johannes


  reply	other threads:[~2014-03-19 14:05 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-07 11:19 [PATCH 1/3] mac80211: fix racy usage of chanctx->refcount Michal Kazior
2014-03-07 11:19 ` [PATCH 2/3] mac80211: include ieee80211_local in chanctx Michal Kazior
2014-03-10 20:27   ` Johannes Berg
2014-03-11  7:36     ` Michal Kazior
2014-03-07 11:19 ` [PATCH 3/3] mac80211: compute chanctx refcount dynamically Michal Kazior
2014-03-07 14:44   ` Johannes Berg
2014-03-08  4:34     ` Zhao, Gang
2014-03-09  9:47   ` Eliad Peller
2014-03-09 15:15     ` Eliad Peller
2014-03-11  7:46   ` Michal Kazior
2014-03-11 13:16     ` Johannes Berg
2014-03-11 13:33       ` Michal Kazior
2014-03-19 14:05         ` Johannes Berg [this message]
2014-03-09  9:40 ` [PATCH 1/3] mac80211: fix racy usage of chanctx->refcount Eliad Peller
2014-03-10 20:29   ` Johannes Berg

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=1395237914.4142.13.camel@jlt4.sipsolutions.net \
    --to=johannes@sipsolutions.net \
    --cc=linux-wireless@vger.kernel.org \
    --cc=michal.kazior@tieto.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;
as well as URLs for NNTP newsgroup(s).