On Fri, 20 Jul 2012 09:18:17 +0300 Kalle Valo <kvalo@xxxxxxxxxxxxxxxx> wrote: > On 07/20/2012 12:11 AM, Pavel Roskin wrote: > > On Thu, 19 Jul 2012 14:08:44 +0300 > > Kalle Valo <kvalo@xxxxxxxxxxxxxxxx> wrote: > >> On 07/12/2012 08:48 PM, Pavel Roskin wrote: > >>> On Thu, 12 Jul 2012 12:13:12 +0300 > >>> Kalle Valo <kvalo@xxxxxxxxxxxxxxxx> wrote: > >>> > >>>> + /* only check 2.4 and 5 GHz bands, skip the rest */ > >>>> + for (band = 0; band <= IEEE80211_BAND_5GHZ; band++) { > >>> > >>> There is something inelegant here. The code is mixing an integer > >>> and an enum. I'd rather go with one or those: > >>> > >>> two enums: > >>> for (band = IEEE80211_BAND_2GHZ; band <= IEEE80211_BAND_5GHZ; > >>> band++) { > >> > >> I somewhat see your point. But IMHO zero is commonly used when > >> iterating over an enum to denote the first value and I don't see > >> how IEEE80211_BAND_2GHZ helps here. > > > > It's the lowest band we support. What if the 900MHz band is added > > one day? > > Then that should be added to the end of the enum, not beginning. I > think it would be bad if we change enum values on the fly. Actually, it should be OK. It's not like it would affect the userspace. I believe that properly written code should not rely on the numeric values of enums. Well, if 0 means something very special (like no error), it should not be changed. The (ab)uses of enums for bitmasks should be exempted too. But IEEE80211_BAND_2GHZ is just one of the bands. -- Regards, Pavel Roskin -- 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