Search Linux Wireless

Re: Missing link quality with wireless-testing

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

 



On Wed, 2009-02-18 at 10:13 -0500, Dan Williams wrote:

> >         /* cfg80211 requires this, and enforces 0..100 */
> >         if (local->hw.flags & IEEE80211_HW_SIGNAL_UNSPEC)
> >                 range->max_qual.level = 100;
> >         else if  (local->hw.flags & IEEE80211_HW_SIGNAL_DBM)
> >                 range->max_qual.level = -110;
> >         else
> >                 range->max_qual.level = 0;
> > 
> > Note the dBm branch -- clearly wrong. Did anyone care? Clearly not.
> 
> Almost; I was partially wrong as well.  The comments from wireless.h
> imply that max_qual.level in the dBm case can be < 0.  Remember that
> these values are *s8*, and thus max_qual.level can be < 0 and greater
> than -127 at least.

Ok, I wasn't looking at the header file, only your explanation.

> This of course doesn't allow RSSI-based levels of > 127, but whatever.
> To get the definitive determination of RSSI vs. dBm for level, you use
> (updated & IW_QUAL_DBM).
> 
> The understanding of max_qual.level == 0 means dBm was probably from
> conversations with Jean and that's apparently not borne out by the
> evidence from wireless.h, unless there's something else I'm not reading.
> 
> NM doesn't handle IW_QUAL_DBM.  It should.
> 
> > Therefore, here's what I'm going to do:
> >  1) always set IW_QUAL_QUAL_INVALID, even in max_qual (fixes bug #1)
> >  2) set max_qual.level to 0 for dBm instead of -110 (fixes bug #2)
> > 
> > patch below.
> 
> I think leaving max_qual.level == -110 is OK in mac80211 actually.  It's
> NM that's got the problem by not respecting IW_QUAL_DBM.

Yeah, but now we've got three or four bugs that together mean we broke
NM. We can't really wait for NM *and* wpa_supplicant to get their
fixes...

Should we just calculate a qual.qual value anyway?

johannes

Attachment: signature.asc
Description: This is a digitally signed message part


[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