linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC] initial channel context implementation
@ 2012-05-18 12:03 Michal Kazior
  2012-05-18 12:03 ` [RFC 1/6] mac80211: introduce channel contexts skeleton code Michal Kazior
                   ` (5 more replies)
  0 siblings, 6 replies; 14+ messages in thread
From: Michal Kazior @ 2012-05-18 12:03 UTC (permalink / raw)
  To: johannes; +Cc: linux-wireless

Hi Johannes,

I've done some work on channel contexts. It's based on your recently
posted patches (set_channel, join_mesh, etc). This is course for
multi-channel operation.

This isn't ready/complete yet. Channel selection is unsafe because the
for() shouldn't be limited to the IEEE80211_MAX_CHANNEL_CONTEXTS. It
should be limited by the maximum number of different channels for a
matching interface combination during runtime.

This however seems to be a bit tricky right now. I've looked at your
cfg80211-enforce-beacon_int_infra_match.patch but the
cfg80211_find_current_combination ignores the fact that an interface
may be up and running without a channel contexts being bound (i.e.
without an association whatsoever). For this to work we need to know
whether a given interface is really running/operational for tx.

I've thought about using netif_carrier_on/off for this purpose but
I'm not sure whether we can use it for our purpose. Other idea is to
create a new function that would be able to tell us whether an
interface is using a channel. But what would that be based on? Can we
check that easily for all interface types (monitor)?

My current idea is to make channel contexts work alongside what we
have today. Old drivers would remain to use current structures
(oper_channel, hw.conf.channel, etc), new ones or the ones wanting to
support multi-channel would switch to channel contexts.


--
Pozdrawiam / Best regards,
Michal Kazior.


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2012-06-06  8:42 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-05-18 12:03 [RFC] initial channel context implementation Michal Kazior
2012-05-18 12:03 ` [RFC 1/6] mac80211: introduce channel contexts skeleton code Michal Kazior
2012-05-18 17:27   ` Johannes Berg
2012-06-06  8:38   ` Johannes Berg
2012-06-06  8:41   ` Johannes Berg
2012-05-18 12:03 ` [RFC 2/6] mac80211: introduce new ieee80211_ops Michal Kazior
2012-06-06  8:39   ` Johannes Berg
2012-05-18 12:03 ` [RFC 3/6] mac80211: add drv_* wrappers for channel contexts Michal Kazior
2012-06-06  8:40   ` Johannes Berg
2012-05-18 12:03 ` [RFC 4/6] mac80211: use channel context notifications Michal Kazior
2012-05-18 12:03 ` [RFC 5/6] mac80211: refactor set_channel_type Michal Kazior
2012-05-20 10:59   ` Eliad Peller
2012-05-18 12:03 ` [RFC 6/6] mac80211: reuse channels for channel context Michal Kazior
2012-06-06  8:42   ` 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).