From: Dan Williams <dcbw@redhat.com>
To: Jouni Malinen <j@w1.fi>
Cc: Marcel Holtmann <marcel@holtmann.org>,
Johannes Berg <johannes@sipsolutions.net>,
linux-wireless@vger.kernel.org
Subject: Re: Missing link quality with wireless-testing
Date: Wed, 18 Feb 2009 08:20:53 -0500 [thread overview]
Message-ID: <1234963253.13950.68.camel@localhost> (raw)
In-Reply-To: <1234961297.13950.55.camel@localhost>
On Wed, 2009-02-18 at 07:48 -0500, Dan Williams wrote:
> On Wed, 2009-02-18 at 14:33 +0200, Jouni Malinen wrote:
> > On Wed, Feb 18, 2009 at 07:18:43AM -0500, Dan Williams wrote:
> >
> > > With WEXT, there are three ways to calculate pretty bars. They *all*
> > > require max_qual values returned from the GIWRANGE handler, because
> > > otherwise you have no f**king clue what the upper or lower bounds are.
> >
> > > QUAL.LEVEL in dBm
> > > --------------
> > >
> > > Requires:
> > > - max_qual.level == 0 (ie, dBm values)
> >
> > That is an area where NM (= 0) and mac80211 (= -110) do not agree.
>
> Then mac80211 is not conforming to WEXT... unless it's setting
> IW_QUAL_DBM in the updated field, which it probably is.
>
> Before we added IW_QUAL_DBM, the switch between dBm and RSSI was
> max_qual.level; if it was 0, level was in dBm, because no cards in use
> in Linux at that time could support a signal of more 0 dBm. Thus, if it
> was over 0, the value was in RSSI.
>
> Here's the relevant bit of wireless.h:
>
> /* Quality range (link, level, noise)
> * If the quality is absolute, it will be in the range [0 ; max_qual],
> * if the quality is dBm, it will be in the range [max_qual ; 0].
>
> That doc never got updated for IW_QUAL_DBM either.
And yeah, the NM method isn't entirely consistent with this comment in
wext.h either; however, it's pretty unclear how to actually figure out
from max_qual whether the driver is reporting absolute or dBm unless you
use IW_QUAL_DBM.
Dan
> > > NM is probably fine here with qual == 0 because I doubt the GIWRANGE
> > > handler is returning a valid max_qual.qual > 0 anymore with Johannes'
> > > patch. Could be wrong though.
> >
> > Well, it is not fine, but not only for that reason.. max_qual.qual is
> > still set to 100 and the IW_QUAL_QUAL_INVALID is not used for it.
> > However, even if I set IW_QUAL_QUAL_INVALID and remove "quality" from
> > wpa_supplicant dbus interface, I still get NM showing perfect 100%
> > signal all the time regardless of how close to losing the connection the
> > card really is..
> >
> > I gave up on trying to understand all the cases, but my assumption is
> > that the remaining issue is in the disagreement on max_qua.level for the
> > dBm case. However, I'm not sure whether fixing that would automatically
> > resolve the issues with wext (it might be enough for the current nl80211
> > version with wpa_supplicant from git head).
>
> NM doesn't really handle IW_QUAL_DBM (added in WE-19). Mainly because
> stuff worked without it, and it wasn't implemented in drivers until
> quite recently. NM should handle IW_QUAL_DBM.
>
> > > Ah right; the dbus interface shouldn't be appending "quality" to the
> > > dict if the driver doesn't provide valid quality (ie, max_qual.updated
> > > has the QUAL_INVALID bit set). Same thing for noise and level.
> >
> > The unknown values are not included anymore in wpa_supplicant 0.7.x.
>
> Just pulled; it doesn't show up in master. Do you have a separate git
> repo for 0.7.x?
>
> Dan
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2009-02-18 13:22 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-17 18:52 Missing link quality with wireless-testing Marcel Holtmann
2009-02-17 19:43 ` Johannes Berg
2009-02-17 20:24 ` Marcel Holtmann
2009-02-17 20:55 ` Johannes Berg
2009-02-17 21:09 ` Marcel Holtmann
2009-02-17 23:25 ` Dan Williams
2009-02-18 4:57 ` Marcel Holtmann
2009-02-18 7:31 ` Jouni Malinen
2009-02-18 8:06 ` Marcel Holtmann
2009-02-18 8:25 ` Jouni Malinen
2009-02-18 12:18 ` Dan Williams
2009-02-18 12:33 ` Jouni Malinen
2009-02-18 12:48 ` Dan Williams
2009-02-18 13:20 ` Dan Williams [this message]
2009-02-18 14:01 ` Jouni Malinen
2009-02-18 14:25 ` Johannes Berg
2009-02-18 13:37 ` Johannes Berg
2009-02-18 15:13 ` Dan Williams
2009-02-18 16:48 ` Johannes Berg
2009-02-18 17:27 ` [PATCH] cfg80211/mac80211: fill qual.qual value/adjust max_qual.qual Johannes Berg
2009-02-18 17:29 ` Johannes Berg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1234963253.13950.68.camel@localhost \
--to=dcbw@redhat.com \
--cc=j@w1.fi \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=marcel@holtmann.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.