Date: Wed, 18 May 2011 14:02:57 +0800 From: Adrian Chadd <adrian@freebsd.org> To: freebsd-wireless@freebsd.org Subject: ath_rate_sample: only sample/try HT rates for HT nodes Message-ID: <BANLkTi=53kfqj3HLWa%2BKWEHn3rWCm7ML6Q@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
--00151750eae4e272dd04a386a3cf Content-Type: text/plain; charset=ISO-8859-1 Hi, The initial sample rate 11n code that I merged in from Rui didn't properly disable the non-HT rates when sampling and choosing a rate for a HT node. This meant that time was spent trying to sample non-11n rates. This patch disables this behaviour whilst leaving the non-11n rates in the 11na/11ng TX schedules. Since the management rate in an 11na network is a legacy rate (6mbit, not MCS0) then there will be instances of legacy TXing occuring. If the legacy rates are simply removed from the TX schedule, the sample rate module logs a complaint. I'd rather this not happen. This seems to work in legacy and non-legacy modes but I admit I haven't given it much testing yet in 11bg and 11a modes. I'd appreciate some testing and feedback. Thanks! Adrian --00151750eae4e272dd04a386a3cf Content-Type: application/octet-stream; name="sample-rate-11n.diff" Content-Disposition: attachment; filename="sample-rate-11n.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_gntv7qay0 SW5kZXg6IHNhbXBsZS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHNhbXBsZS5jCShyZXZpc2lvbiAyMjE5NDcp CisrKyBzYW1wbGUuYwkod29ya2luZyBjb3B5KQpAQCAtMTYxLDkgKzE2MSwxMCBAQAogICogb3Ig LTEgaWYgYWxsIHRoZSBhdmVyYWdlX3R4X3RpbWVzIGFyZSAwLgogICovCiBzdGF0aWMgX19pbmxp bmUgaW50Ci1waWNrX2Jlc3RfcmF0ZShzdHJ1Y3Qgc2FtcGxlX25vZGUgKnNuLCBjb25zdCBIQUxf UkFURV9UQUJMRSAqcnQsCitwaWNrX2Jlc3RfcmF0ZShzdHJ1Y3QgYXRoX25vZGUgKmFuLCBjb25z dCBIQUxfUkFURV9UQUJMRSAqcnQsCiAgICAgaW50IHNpemVfYmluLCBpbnQgcmVxdWlyZV9hY2tl ZF9iZWZvcmUpCiB7CisJc3RydWN0IHNhbXBsZV9ub2RlICpzbiA9IEFUSF9OT0RFX1NBTVBMRShh bik7CiAgICAgICAgIGludCBiZXN0X3JhdGVfcml4LCBiZXN0X3JhdGVfdHQ7CiAJdWludDMyX3Qg bWFzazsKIAlpbnQgcml4LCB0dDsKQEAgLTE3NCw2ICsxNzUsMTIgQEAKIAkJaWYgKChtYXNrICYg MSkgPT0gMCkJCS8qIG5vdCBhIHN1cHBvcnRlZCByYXRlICovCiAJCQljb250aW51ZTsKIAorCQkv KiBEb24ndCBwaWNrIGEgbm9uLUhUIHJhdGUgZm9yIGEgSFQgbm9kZSAqLworCQlpZiAoKGFuLT5h bl9ub2RlLm5pX2ZsYWdzICYgSUVFRTgwMjExX05PREVfSFQpICYmCisJCSAgICAocnQtPmluZm9b cml4XS5waHkgIT0gSUVFRTgwMjExX1RfSFQpKSB7CisJCQljb250aW51ZTsKKwkJfQorCiAJCXR0 ID0gc24tPnN0YXRzW3NpemVfYmluXVtyaXhdLmF2ZXJhZ2VfdHhfdGltZTsKIAkJaWYgKHR0IDw9 IDAgfHwKIAkJICAgIChyZXF1aXJlX2Fja2VkX2JlZm9yZSAmJgpAQCAtMTk2LDExICsyMDMsMTIg QEAKICAqIFBpY2sgYSBnb29kICJyYW5kb20iIGJpdC1yYXRlIHRvIHNhbXBsZSBvdGhlciB0aGFu IHRoZSBjdXJyZW50IG9uZS4KICAqLwogc3RhdGljIF9faW5saW5lIGludAotcGlja19zYW1wbGVf cmF0ZShzdHJ1Y3Qgc2FtcGxlX3NvZnRjICpzc2MgLCBzdHJ1Y3Qgc2FtcGxlX25vZGUgKnNuLAor cGlja19zYW1wbGVfcmF0ZShzdHJ1Y3Qgc2FtcGxlX3NvZnRjICpzc2MgLCBzdHJ1Y3QgYXRoX25v ZGUgKmFuLAogICAgIGNvbnN0IEhBTF9SQVRFX1RBQkxFICpydCwgaW50IHNpemVfYmluKQogewog I2RlZmluZQlET1QxMVJBVEUoaXgpCShydC0+aW5mb1tpeF0uZG90MTFSYXRlICYgSUVFRTgwMjEx X1JBVEVfVkFMKQogI2RlZmluZQlNQ1MoaXgpCQkocnQtPmluZm9baXhdLmRvdDExUmF0ZSB8IElF RUU4MDIxMV9SQVRFX01DUykKKwlzdHJ1Y3Qgc2FtcGxlX25vZGUgKnNuID0gQVRIX05PREVfU0FN UExFKGFuKTsKIAlpbnQgY3VycmVudF9yaXgsIHJpeDsKIAl1bnNpZ25lZCBjdXJyZW50X3R0Owog CXVpbnQzMl90IG1hc2s7CkBAIC0yMDgsNiArMjE2LDcgQEAKIAljdXJyZW50X3JpeCA9IHNuLT5j dXJyZW50X3JpeFtzaXplX2Jpbl07CiAJaWYgKGN1cnJlbnRfcml4IDwgMCkgewogCQkvKiBubyBz dWNjZXNzZXMgeWV0LCBzZW5kIGF0IHRoZSBsb3dlc3QgYml0LXJhdGUgKi8KKwkJLyogWFhYIHNo b3VsZCByZXR1cm4gTUNTMCBpZiBIVCAqLwogCQlyZXR1cm4gMDsKIAl9CiAKQEAgLTIyMyw2ICsy MzIsMTMgQEAKIAkJCWNvbnRpbnVlOwogCQl9CiAKKwkJLyogaWYgdGhlIG5vZGUgaXMgSFQgYW5k IHRoZSByYXRlIGlzbid0IEhULCBkb24ndCBib3RoZXIgc2FtcGxlICovCisJCWlmICgoYW4tPmFu X25vZGUubmlfZmxhZ3MgJiBJRUVFODAyMTFfTk9ERV9IVCkgJiYKKwkJICAgIChydC0+aW5mb1ty aXhdLnBoeSAhPSBJRUVFODAyMTFfVF9IVCkpIHsKKwkJCW1hc2sgJj0gfigxPDxyaXgpOworCQkJ Z290byBuZXh0cmF0ZTsKKwkJfQorCiAJCS8qIHRoaXMgYml0LXJhdGUgaXMgYWx3YXlzIHdvcnNl IHRoYW4gdGhlIGN1cnJlbnQgb25lICovCiAJCWlmIChzbi0+c3RhdHNbc2l6ZV9iaW5dW3JpeF0u cGVyZmVjdF90eF90aW1lID4gY3VycmVudF90dCkgewogCQkJbWFzayAmPSB+KDE8PHJpeCk7CkBA IC0yMzYsMTEgKzI1MiwxMiBAQAogCQkJZ290byBuZXh0cmF0ZTsKIAkJfQogCi0JCS8qIGRvbid0 IHNhbXBsZSBtb3JlIHRoYW4gMiByYXRlcyBoaWdoZXIgZm9yIHJhdGVzID4gMTFNICovCi0JCWlm IChET1QxMVJBVEUocml4KSA+IDIqMTEgJiYgcml4ID4gY3VycmVudF9yaXggKyAyKSB7Ci0JCQlt YXNrICY9IH4oMTw8cml4KTsKLQkJCWdvdG8gbmV4dHJhdGU7Ci0JCX0KKwkJLyogZG9uJ3Qgc2Ft cGxlIG1vcmUgdGhhbiAyIHJhdGVzIGhpZ2hlciBmb3IgcmF0ZXMgPiAxMU0gZm9yIG5vbi1IVCBy YXRlcyAqLworCQlpZiAoISAoYW4tPmFuX25vZGUubmlfZmxhZ3MgJiBJRUVFODAyMTFfTk9ERV9I VCkpCisJCQlpZiAoRE9UMTFSQVRFKHJpeCkgPiAyKjExICYmIHJpeCA+IGN1cnJlbnRfcml4ICsg MikgeworCQkJCW1hc2sgJj0gfigxPDxyaXgpOworCQkJCWdvdG8gbmV4dHJhdGU7CisJCQl9CiAK IAkJc24tPmxhc3Rfc2FtcGxlX3JpeFtzaXplX2Jpbl0gPSByaXg7CiAJCXJldHVybiByaXg7CkBA IC0zMjcsNyArMzQ0LDcgQEAKIAkvKiBYWFggVE9ETzogdGhpcyBkb2Vzbid0IGtub3cgYWJvdXQg MTFnbiB2cyAxMWcgcHJvdGVjdGlvbjsgdGVhY2ggaXQgKi8KIAltcnIgPSBzYy0+c2NfbXJyZXRy eSAmJiAhKGljLT5pY19mbGFncyAmIElFRUU4MDIxMV9GX1VTRVBST1QpOwogCi0JYmVzdF9yaXgg PSBwaWNrX2Jlc3RfcmF0ZShzbiwgcnQsIHNpemVfYmluLCAhbXJyKTsKKwliZXN0X3JpeCA9IHBp Y2tfYmVzdF9yYXRlKGFuLCBydCwgc2l6ZV9iaW4sICFtcnIpOwogCWlmIChiZXN0X3JpeCA+PSAw KSB7CiAJCWF2ZXJhZ2VfdHhfdGltZSA9IHNuLT5zdGF0c1tzaXplX2Jpbl1bYmVzdF9yaXhdLmF2 ZXJhZ2VfdHhfdGltZTsKIAl9IGVsc2UgewpAQCAtMzM4LDcgKzM1NSw3IEBACiAJICogcmF0ZXMg dG8gc2FtcGxlX3JhdGUlIG9mIHRoZSB0b3RhbCB0cmFuc21pc3Npb24gdGltZS4KIAkgKi8KIAlp ZiAoc24tPnNhbXBsZV90dFtzaXplX2Jpbl0gPCBhdmVyYWdlX3R4X3RpbWUgKiAoc24tPnBhY2tl dHNfc2luY2Vfc2FtcGxlW3NpemVfYmluXSpzc2MtPnNhbXBsZV9yYXRlLzEwMCkpIHsKLQkJcml4 ID0gcGlja19zYW1wbGVfcmF0ZShzc2MsIHNuLCBydCwgc2l6ZV9iaW4pOworCQlyaXggPSBwaWNr X3NhbXBsZV9yYXRlKHNzYywgYW4sIHJ0LCBzaXplX2Jpbik7CiAJCUlFRUU4MDIxMV9OT1RFKGFu LT5hbl9ub2RlLm5pX3ZhcCwgSUVFRTgwMjExX01TR19SQVRFQ1RMLAogCQkgICAgICZhbi0+YW5f bm9kZSwgInNpemUgJXUgc2FtcGxlIHJhdGUgJWQgY3VycmVudCByYXRlICVkIiwKIAkJICAgICBi aW5fdG9fc2l6ZShzaXplX2JpbiksIFJBVEUocml4KSwK --00151750eae4e272dd04a386a3cf--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BANLkTi=53kfqj3HLWa%2BKWEHn3rWCm7ML6Q>