On Sat, Feb 21, 2015 at 10:57:10PM -0500, Ilan Peer wrote:
> Previously, the indoor setting configuration assumed that as
> long as a station interface is connected, the indoor environment
> setting does not change. However, this assumption is problematic
> as:
> 
> - It is possible that a station interface is connected to a mobile
>   AP, e.g., softAP or a P2P GO, where it is possible that both the
>   station and the mobile AP move out of the indoor environment making
>   the indoor setting invalid. In such a case, user space has no way to
>   invalidate the setting.

At the protocol level should we consider the need for a dynamic environment
change? Until then a change of environment likely should implicate an AP
disconnect, which is what Linux does. With your changes in place we could
do something even more graceful should the protocol allow for it.

For instance if the regulatory parameters for a country are the same for
indoor and outdoro a change in environment should not require a disconnect.

If the change was from a more restrictive environment to a more liberal
set of regulatory settings it could mean increasing TX power of the AP
changing to a channel which perhaps was not allowed before.

If the change was from a less restrictive environment to a more restrictive
environment the AP might want to change channels for instance or reduce
TX power.

While change in indoor/outdoor might be something silly to consider given
the likelihood of it being a common thing to happen that you change an
AP from indoor / outdoor regularly I'd consider instead the possibility to
reuse such a dynamic environment change notification for purposes of dynamic
environmental adjustments of BSSes. Typically BSSes settings are static but RF
environments change regularly so its silly to expect a BSS and its initial
Automatic Channel Selection algorithm to be corrrect during the lifetime of a
BSS.

> - A station interface disconnection does not necessarily imply that
>   the device is no longer operating in an indoor environment, e.g.,
>   it is possible that the station interface is roaming but is still
>   stays indoor.

Sure.

You also fail to explain how we currently provide the indoor
thing to the kernel, I think its worth providing that in the commit
log and also explaining how we don't use the country IE environment
thing at all.

> To handle the above, extend the indoor configuration API to allow
> user space to indicate a change of indoor settings, and allow it to
> indicate weather it controls the indoor setting, such that:
> 
> 1. If the user space process explicitly indicates that it is going
>    to control the indoor setting, do not clear the indoor setting
>    internally, unless the socket is released. The user space process
>    should use the NL80211_ATTR_SOCKET_OWNER attribute in the command
>    to state that it is going to control the indoor setting.
> 2. Reset the indoor setting when restoring the regulatory settings in
>    case it is not owned by a user space process.
> 
> While at it directly update the indoor setting without wrapping it as
> a regulatory request, to simplify the processing.

Please wrap that specific change into its own separate commit, it
will make it easier to review the changes and also make this change
atomic.

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

Reply via email to