From owner-freebsd-wireless@FreeBSD.ORG Tue Jul 23 14:30:11 2013 Return-Path: Delivered-To: freebsd-wireless@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id C03959E3 for ; Tue, 23 Jul 2013 14:30:11 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-wg0-x22b.google.com (mail-wg0-x22b.google.com [IPv6:2a00:1450:400c:c00::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5BC222196 for ; Tue, 23 Jul 2013 14:30:11 +0000 (UTC) Received: by mail-wg0-f43.google.com with SMTP id z12so2009233wgg.22 for ; Tue, 23 Jul 2013 07:30:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=lpJBBolJCKdN3YC9h5xEzNpJCFNabasn0f5QlWLRtTQ=; b=xcsyFx69bNXM0qo1mL4xTcTDiLL2aEYHifoJmQkS+p4et7QUgYkQGoAkHdLNfg9Zjy p9sO2NZOQ0cjCR2ydsLaGjVYmEXUqlKB1VpgUYKcDJET2n2VTGCrFMqWXUfAgT78SMuD 983abWWLMh5Zp/z7tWNq+YMeQugpe4+cUtzpv1gRxreHpnOWICJE+wja4+KKwFDNRz+i 1xUIdt3Sr6LHpQ33CtT2DjHnl6TN3tGgwNrq48DIpD7HQDik8tDWCxDDOIWEZKRwDMIF /yR4Y0GHs8hRq+lwl8LyZESXLAfn5y21CYrdVkqn1kt3ELtcFJNcNDpd3FGKFU+S/y60 YFJg== MIME-Version: 1.0 X-Received: by 10.194.63.229 with SMTP id j5mr22799360wjs.79.1374589809721; Tue, 23 Jul 2013 07:30:09 -0700 (PDT) Sender: adrian.chadd@gmail.com Received: by 10.217.94.132 with HTTP; Tue, 23 Jul 2013 07:30:09 -0700 (PDT) In-Reply-To: References: Date: Tue, 23 Jul 2013 07:30:09 -0700 X-Google-Sender-Auth: Y7PuZI9fRpy2IyfSl1N7Hw-WjjA Message-ID: Subject: Re: Chenchong's work on net80211_ratectl From: Adrian Chadd To: Chenchong Qin Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-wireless@freebsd.org X-BeenThere: freebsd-wireless@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Discussions of 802.11 stack, tools device driver development." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 23 Jul 2013 14:30:11 -0000 Hi! Feedback time! This is a good starting point! There's not a lot here yet, which is good. I didn't expect there to be! * Why do you have IEEE80211_RATECTL_OPT_MULTXCHAIN ? * The reason why I check both the vap/ic and the node bits for HT capabilities is that they're negotiated. The node bits are what the remote peer supports. The vap/ic bits are what the local device/vap supports. So, if the remote node supports STBC and the local node doesn't, we shouldn't try transmitting short-GI. * In ieee80211_ratectl_complete_rcflags(), enabling RTS/CTS but not transmitting an 11n rate isn't "right." The 11n hardware supports per-rate RTS/CTS for non-HT rates. You have to ensure that works. You've added a capability bit for this (IEEE80211_RATECTL_OPT_MRRPROT) so you should use it. * the new rate field "options" should be "ir_options", like how the rest of the fields are prefixed with ir_ * .. and, nitpicking, it should be "ir_capabilities". But this is a good starting point. Let's tidy this stuff up and then start work on on porting over ath_rate_sample into net80211. -adrian