From patchwork Thu Jan 23 19:06:34 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Karl Beldan X-Patchwork-Id: 3530641 Return-Path: X-Original-To: patchwork-linux-wireless@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id D98A3C02DC for ; Thu, 23 Jan 2014 19:07:58 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 116B5200E5 for ; Thu, 23 Jan 2014 19:07:54 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 3DCB820181 for ; Thu, 23 Jan 2014 19:07:49 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755291AbaAWTHp (ORCPT ); Thu, 23 Jan 2014 14:07:45 -0500 Received: from mail-we0-f175.google.com ([74.125.82.175]:48985 "EHLO mail-we0-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754825AbaAWTHo (ORCPT ); Thu, 23 Jan 2014 14:07:44 -0500 Received: by mail-we0-f175.google.com with SMTP id p61so1689520wes.34 for ; Thu, 23 Jan 2014 11:07:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=D2CfVL8BXS/L6AAB0q/LEkW1R6vOeL3x1xKpaV0lv7I=; b=gUZ39FdZdhkxrExxKxFQxpETRZtiHnR2POasXdhaxyfHeGlKvOHYOPitQTY5b9+J3g OtKT5oClGsS+efXqPELe9Rw1GDR18W37FSPsl/1BlSfD8Uuf98qZLv2Bc9RvxjEiHx61 O4ZT3EQxQCmyOtQzwa+sjL+5JHM2+TwlqkNer3SUQpGIS3kRF6+PYlzwrJBUALPiwuHy if50wy+KtmCdXSFLc+n68z0+OPW8+CSnM21qFMm0PD2wHfB/weWgSsMpfpuwe3sdrcCf pI0jOdYiXD7pdaCvXslETni2NA4YrqTPH4GtuPCIgsq8tn6o/yvAayYytFS/QxfhnGLx ao8A== X-Received: by 10.194.174.4 with SMTP id bo4mr3178093wjc.62.1390504063325; Thu, 23 Jan 2014 11:07:43 -0800 (PST) Received: from magnum.frso.rivierawaves.com (vpn.rivierawaves.com. [91.151.119.162]) by mx.google.com with ESMTPSA id hv3sm1247384wib.5.2014.01.23.11.07.41 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 23 Jan 2014 11:07:42 -0800 (PST) From: Karl Beldan To: Johannes Berg Cc: linux-wireless , Karl Beldan , Karl Beldan , Helmut Schaa , Emmanuel Grumbach Subject: [PATCH v2] mac80211: send {ADD, DEL}BA on AC_VO like other mgmt frames, as per spec Date: Thu, 23 Jan 2014 20:06:34 +0100 Message-Id: <1390503994-13496-1-git-send-email-karl.beldan@gmail.com> X-Mailer: git-send-email 1.8.5.1.19.gdaad3aa In-Reply-To: <1390486106.4142.15.camel@jlt4.sipsolutions.net> References: <1390486106.4142.15.camel@jlt4.sipsolutions.net> Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Spam-Status: No, score=-7.3 required=5.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED, FREEMAIL_FROM, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, T_DKIM_INVALID, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Karl Beldan ATM, {ADD,DEL}BA and BAR frames are sent on the AC matching the TID of the BA parameters. Johannes recalled [1] that it fixed some races with the DELBA and indeed this behavior was introduced in [2]. While [2] is right for the BARs, the part queueing the {ADD,DEL}BAs on their BA params TID AC violates the spec and is more a workaround for some drivers. Helmut expressed [2] some concerns wrt such drivers, in particular DELBAs in rt2x00. ATM, DELBAs are sent after a driver has called (hence "purposely") ieee80211_start_tx_ba_cb_irqsafe and Johannes and Emmanuel gave [2] some details wrt intentions behind the split of the IEEE80211_AMPDU_TX_STOP_* given to the drv ampdu_action supposed to call this function, which could prove handy to people trying to do the right thing in faulty drivers (if their fw/hw don't get in their way). [1] Message-Id: http://mid.gmane.org/1390391564-18481-1-git-send-email-karl.beldan@gmail.com [2] Commit: cf6bb79ad8287cd9fe87 ("mac80211: Use appropriate TID for sending BAR, ADDBA and DELBA frames") Signed-off-by: Karl Beldan Cc: Helmut Schaa Cc: Emmanuel Grumbach --- net/mac80211/agg-tx.c | 2 +- net/mac80211/ht.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/net/mac80211/agg-tx.c b/net/mac80211/agg-tx.c index 13b7683..ce9633a 100644 --- a/net/mac80211/agg-tx.c +++ b/net/mac80211/agg-tx.c @@ -107,7 +107,7 @@ static void ieee80211_send_addba_request(struct ieee80211_sub_if_data *sdata, mgmt->u.action.u.addba_req.start_seq_num = cpu_to_le16(start_seq_num << 4); - ieee80211_tx_skb_tid(sdata, skb, tid); + ieee80211_tx_skb(sdata, skb); } void ieee80211_send_bar(struct ieee80211_vif *vif, u8 *ra, u16 tid, u16 ssn) diff --git a/net/mac80211/ht.c b/net/mac80211/ht.c index fab7b91..dc3c280 100644 --- a/net/mac80211/ht.c +++ b/net/mac80211/ht.c @@ -375,7 +375,7 @@ void ieee80211_send_delba(struct ieee80211_sub_if_data *sdata, mgmt->u.action.u.delba.params = cpu_to_le16(params); mgmt->u.action.u.delba.reason_code = cpu_to_le16(reason_code); - ieee80211_tx_skb_tid(sdata, skb, tid); + ieee80211_tx_skb(sdata, skb); } void ieee80211_process_delba(struct ieee80211_sub_if_data *sdata,