Received: by 2002:a05:6a10:9e8c:0:0:0:0 with SMTP id y12csp354431pxx; Wed, 28 Oct 2020 06:34:22 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyB4caY5TYgcwBl9wC0N3ZVnGFqrI7PPobW9Js3x7B2exxzOsN7KqnopICF7IdV3Mz6G1QL X-Received: by 2002:a05:6402:1298:: with SMTP id w24mr7343919edv.280.1603892062510; Wed, 28 Oct 2020 06:34:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603892062; cv=none; d=google.com; s=arc-20160816; b=zHfPtLrg2tu2Q8cBO96DWy/nyc7IDKhFxQSqbhVvELMWItfT4+r2jsScSzUvRFeYJS uysj/gS+KfhHNbTKh4dvp842LCGV9zU9VOtU2cytE2PZSP4ULvsVXNZ9GWgtFgCIJD9g 3SwgH05GCiIK1Vlv6BgJFjCQSxmq/5GKRe8JUxE2KMwfj0KOeollZjAzTQItdqL9BcaJ zN2JFFaMMJIgFRV/f5SQwodo1rBziy42LxM3gXr6dKgTbvLb3lS4d2ZDjB1x7BATgDya tS0KEUiBImzblm+ZRW+EOrDKpwWo2YXXeU+pCM21n6MBdUTXASPtH34J6DpzZcOgFc9j 4QWA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=8jqyhHgR2M48qRpZ3Wa5DJtl0FS1/TnqeunxdxAbNOo=; b=UPX60LijI3k4Fg4iKrWStIIG7dyzmr5xsoknB7ptwlTCybIKw+zeRMJNW0niGqnpFR DRSYujRdL1gaVVCJaGSC9QCzrG8U2XS0OPhXrodQjXIo828PO22uTb3o+y3j8kDYwk6D TAdRZBVAeAKt5A83yuWmutzFTSFLARHXimfGzYOY0s4FhQVyQyZrL+M7buDgfw4v6+Gp OQlQtKAV6MBabrCabKzCyu+EzCKrjtHDEveYGL4xkn/Otz7AagFNfTEMXAsfR6+czY+n uiMuXVJ2nuUy+RWdVmbKtOt5s1BoEhjXfZvIbd88BG9VWlizIel9Ux2dQHtrFgZq1j+g Fvcw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=14B0cFA1; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id g8si3473416ejm.389.2020.10.28.06.34.00; Wed, 28 Oct 2020 06:34:22 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=14B0cFA1; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1802348AbgJ0PqP (ORCPT + 99 others); Tue, 27 Oct 2020 11:46:15 -0400 Received: from mail.kernel.org ([198.145.29.99]:55880 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1800851AbgJ0Pg6 (ORCPT ); Tue, 27 Oct 2020 11:36:58 -0400 Received: from localhost (83-86-74-64.cable.dynamic.v4.ziggo.nl [83.86.74.64]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id E2BCF22264; Tue, 27 Oct 2020 15:36:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1603813017; bh=l7550WL8V7HrHeDV9MOX337k1Jz9qcvopLUQ/QNR858=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=14B0cFA1eIPRWVbVCBk9QVtcqi9SCLWMnYqyqXR6zegLSrm25X4A1VXLamaxF9sol XTefYrl9Bp6WFM12dRqJ4E+cIvNMPn5n9TEdcsyAT+qqBmq3A46jjduSPpeYIIT+mw OWlUmyxNiMLNR1t06xiLmv0IMP3JBCuq5piarOhM= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, =?UTF-8?q?J=C3=A9r=C3=B4me=20Pouiller?= , Sasha Levin Subject: [PATCH 5.9 379/757] staging: wfx: fix BA sessions for older firmwares Date: Tue, 27 Oct 2020 14:50:29 +0100 Message-Id: <20201027135508.330298911@linuxfoundation.org> X-Mailer: git-send-email 2.29.1 In-Reply-To: <20201027135450.497324313@linuxfoundation.org> References: <20201027135450.497324313@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Jérôme Pouiller [ Upstream commit 4fd1241778b08129f196605c62636a4d6d71c2c7 ] Firmwares with API < 3.6 do not forward DELBA requests. Thus, when a Block Ack session is restarted, the reordering buffer is not flushed and the received sequence number is not contiguous. Therefore, mac80211 starts to wait some missing frames that it will never receive. This patch disables the reordering buffer for old firmware. It is harmless when the network is unencrypted. When the network is encrypted, the non-contiguous frames will be thrown away by the TKIP/CCMP replay protection. So, the user will observe some packet loss with UDP and performance drop with TCP. Fixes: e5da5fbd7741 ("staging: wfx: fix CCMP/TKIP replay protection") Signed-off-by: Jérôme Pouiller Link: https://lore.kernel.org/r/20201007101943.749898-4-Jerome.Pouiller@silabs.com Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/staging/wfx/data_rx.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/staging/wfx/data_rx.c b/drivers/staging/wfx/data_rx.c index 6fb0788807426..33b715b7b94bb 100644 --- a/drivers/staging/wfx/data_rx.c +++ b/drivers/staging/wfx/data_rx.c @@ -17,6 +17,9 @@ static void wfx_rx_handle_ba(struct wfx_vif *wvif, struct ieee80211_mgmt *mgmt) { int params, tid; + if (wfx_api_older_than(wvif->wdev, 3, 6)) + return; + switch (mgmt->u.action.u.addba_req.action_code) { case WLAN_ACTION_ADDBA_REQ: params = le16_to_cpu(mgmt->u.action.u.addba_req.capab); -- 2.25.1