Search Linux Wireless

Re: [PATCH] mac80211: give warning if building w/out rate ctrl algorithm

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 16 Feb 2010 15:01:39 -0800
Marcel Holtmann <marcel@xxxxxxxxxxxx> wrote:

> Hi Andres,
> 
> > > > I discovered that if EMBEDDED=y, one can accidentally build a
> > > > mac80211 stack and drivers w/ no rate control algorithm.  For
> > > > drivers like RTL8187 that don't supply their own RC algorithms,
> > > > this will cause ieee80211_register_hw to fail (making the driver
> > > > unusable).
> > > > 
> > > > This will tell kconfig to provide a warning if no rate control
> > > > algorithms have been selected.  That'll at least warn the user;
> > > > users that know that their drivers supply a rate control
> > > > algorithm can safely ignore the warning, and those who don't
> > > > know (or who expect to be using multiple drivers) can select a
> > > > default RC algorithm.
> > > 
> > > this is not an acceptable policy. You are generating false
> > > positives now for drivers that have been fine before.
> > > 
> > 
> > Unacceptable how?  It's a warning, not a requirement.  It's
> > telling the user to double-check their config.
> 
> and why not either whitelist drivers with their own rate control or
> have the ones without rate control depend on a selection. You can't
> really expect all users to know which driver comes with rate control
> and which doesn't.
> 

Two reasons:

1) It's not clear which drivers should be whitelisted.  *No* driver sets
IEEE80211_HW_HAS_RATE_CONTROL. Some drivers (ath9k, iwlagn, iwl3945)
call ieee80211_rate_control_register().  That's a pretty incomplete
list.

2) Here's a scenario to consider: via menuconfig, a user configures
net/mac80211 (that section comes before drivers/net/wireless); there's
no warning, because iwlagn is already selected in drivers/net/wireless.
They don't select any RC algorithms, and then proceed to
drivers/net/wireless, where they select rtl8187 (maybe they use both,
or maybe iwlagn was just selected as the default, or maybe from an
old .config; who knows?). Rtl8187 requires an RC algorithm, but there's
no warning displayed to the user that RC algorithms aren't being built,
so the user then builds a broken rtl8187 driver.  Maybe the rtl8187
'help' section should be warning the user, or maybe the current warning
should be moved over to drivers/net/wireless/Kconfig, or maybe the
rtl8187 driver should just forcefully select an RC algorithm if none is
selected (which is frowned upon).  This kind of problem is not fixed by
a simplistic whitelist, though.


I'm more than happy to come up w/ a Kconfig framework for drivers to
opt into, stating that they don't require RC, but that's something that
needs wider discussion, feedback from driver authors, and potentially
changes to drivers as well.  In the meantime, a simplistic warning
(suggesting to the user a *safe* choice) is better than nothing, and
hurts no one.
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux