Please note: This project is no longer active. The website is kept online for historic purposes only.
If you´re looking for a Linux driver for your Atheros WLAN device, you should continue here .

Ticket #1403 (new defect)

Opened 14 years ago

Last modified 14 years ago

Dubious INACT value returned by wlanconfig

Reported by: rozteck@interia.pl Assigned to:
Priority: trivial Milestone:
Component: madwifi: tools Version: trunk
Keywords: Cc:
Patch is attached: 1 Pending:

Description

The RXSEQ value returned by wlanconfig athX list isn't shifted as it is done in proc handler, so the values returned by cat /proc/net/madwifi/athX/associated_sta and wlanconfig athX list are different.

Attachments

wlanconfig_rxseq_shift.diff (410 bytes) - added by rozteck@interia.pl on 06/21/07 12:57:56.
This patch shifts the si->isi_rxseqs in order to display it properly to user. Signed-off-by: Tomasz Rostanski <rozteck@interia.pl>

Change History

06/21/07 12:57:56 changed by rozteck@interia.pl

  • attachment wlanconfig_rxseq_shift.diff added.

This patch shifts the si->isi_rxseqs in order to display it properly to user. Signed-off-by: Tomasz Rostanski <rozteck@interia.pl>

06/22/07 01:37:49 changed by mentor

No, we are reporting the sequence field properly. Are you suggesting that wlanconfig should split the field into seperate fragment and sequence numbers?

06/22/07 01:54:25 changed by mentor

06/22/07 11:22:27 changed by rozteck@interia.pl

Yes, exactly. However I'm looking on the output and see that the idle value I got is incorrect - the transmission is running through the connected node but the idle value is huge - I'll try to debug it later.

# ./wlanconfig ath0 list
ADDR               AID CHAN RATE RSSI  DBM  IDLE  TXSEQ  TXFRAG  RXSEQ  RXFRAG CAPS ACAPS ERP    STATE     MODE
00:15:6d:10:26:c9    1   44  54M   49  -46 65401    1639      11     10       0 Es   F       0        3   Normal WME ATH

The idle value makes the other stats moved one character to right. Changing idle to be displayed on 5 instead of 4 characters sholves this.

06/22/07 12:18:09 changed by rozteck@interia.pl

I have dig it a bit and found that in get_sta_info the si->isi_inact is counted as follows: depending of the node is authorized, associated or not, the si->isi_inact is being set to vap->iv_inact_run, vap->iv_inact_auth or vap->iv_inact_init. In my situation it is vap->iv_inact_run. Now the value is counted as

si->isi_inact = (si->isi_inact - ni->ni_inact) * IEEE80211_INACT_WAIT

In my situation the variables are: si->isi_inact:2, ni->ni_inact: 12, IEEE80211_INACT_WAIT: 15

So: (si->isi_inact - ni->ni_inact) = -10 (si->isi_inact - ni->ni_inact) * IEEE80211_INACT_WAIT = 65386 (si->isi_inact is u_int16_t)

And this value is being returned by wlanconfig. The ni->ni_inact is being set to 12 by ieee80211_input (the line ni->ni_inact = ni->ni_inact_reload;).

This is a bit weird to me. I would rather think that in ieee80211_input we would zero the ni_inact value (however it would give us result (2-0)*15 = 30.

I'm observing it on AP side.

06/22/07 12:45:57 changed by rozteck@interia.pl

btw. I have IEEE80211_INACT_RUN defined to 30 instead of 300, however reverting this change doesn't help much (instead of 65386 I got now 120 for all the time during the transmission).

06/22/07 17:56:24 changed by mentor

  • summary changed from Wrong RXSEQ value returned by wlanconfig to Dubious INACT value returned by wlanconfig.