From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mta0.migadu.com (out-250.mta0.migadu.com [91.218.175.250]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 22806357D0F for ; Wed, 9 Sep 2026 07:46:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=91.218.175.250 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788939982; cv=none; b=opB1mmeJJ+rnVDGFqzKr5RSMHWelnG0cNWdc7yLwdthIRlXicpRRLrl3ilS9eoWjRTZdu0t/iFEI+oojeroArXqZ5OfBnonFk9pfEfF+c16mBklSxvflhVTiCgEHJbmO4AYKnclTrZd11FCgM29ZxVAXDtlUly9e91r1ivo5Qfg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1788939982; c=relaxed/simple; bh=1HiIcPTQpatgTULQZq+hKSjJxRyFSlBPlKLxkQTGBJc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=LQftA9mSlxPrhXo2p+jKQ4TMqxY0E/9aPTKZJVNRZHlf0ZkRANyD7KnIS8I0fLxarkmI4xrCGZLogJeDfn2HL0arQHUoXpY61aen/RVAtQZxvD6bN1tlwAoX7iHrnrkQ6O109rUiRBGBUCkzXn5eXr3I/Qh9rIkTezLEr0Y+luA= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=coLEw6CS; arc=none smtp.client-ip=91.218.175.250 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="coLEw6CS" X-Envelope-To: linux-wireless@vger.kernel.org DKIM-Signature: a=rsa-sha256; bh=1HiIcPTQpatgTULQZq+hKSjJxRyFSlBPlKLxkQTGBJc=; c=simple/simple; d=linux.dev; h=from:to:subject:date:message-id:mime-version:content-type; s=key1; t=1788939977; v=1; x=1789544777; b=coLEw6CS11UEyfIKmGB6/shFa1kz53s+d0aPO4zmlEZRrd8jUoBOnwyth7Ex50gnRJnQ3FZ0 HtZpbWvk8qzdCDwCtzThDe5+q2fXLFZlCVp+GSUGhXi1GzxCVr+n+vrU+Va6N1U0FyctRMTANLw vWMLHILGtEVfM2RGI066ARbY= X-Envelope-To: linux-wireless@vger.kernel.org Received: by smtp.migadu.com with ESMTPS id fa9e0f830415ec3f; Wed, 09 Sep 2026 07:46:17 +0000 X-Mizu-Trace-ID: fa9e0f830415ec3f X-Migadu-Flow: FLOW_OUT From: luka.gejak@linux.dev To: Ping-Ke Shih Cc: linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, Michael Straube , Peter Robinson , Bitterblue Smith , Luka Gejak Subject: [PATCH v11 2/7] wifi: rtw88: rx: mark zero length packets on RTL8723BS Date: Wed, 9 Sep 2026 09:45:51 +0200 Message-ID: <20260909074556.55709-3-luka.gejak@linux.dev> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260909074556.55709-1-luka.gejak@linux.dev> References: <20260909074556.55709-1-luka.gejak@linux.dev> Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Luka Gejak Like the RTL8703B, the RTL8723BS reports receive descriptors with a zero packet length, which the vendor driver drops outright. rtw88 already flags these as having no PSDU for the RTL8703B, so extend the same handling rather than passing an empty frame up. This is gated on the SDIO interface rather than the chip id, because it has only been observed there; the USB variant is not known to do it. Co-developed-by: Michael Straube Signed-off-by: Michael Straube Signed-off-by: Luka Gejak Acked-by: Ping-Ke Shih --- Notes: Changes in v11: none. Changes in v10: none. Changes in v9: none. Changes in v8: none. Changes in v7: none. Changes in v6: none. Changes in v5: the zero length test now evaluates pkt_stat->pkt_len first, so the unlikely case short circuits before the chip test. drivers/net/wireless/realtek/rtw88/rx.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/wireless/realtek/rtw88/rx.c b/drivers/net/wireless/realtek/rtw88/rx.c index 01fd299abb7f..fde21c840ac0 100644 --- a/drivers/net/wireless/realtek/rtw88/rx.c +++ b/drivers/net/wireless/realtek/rtw88/rx.c @@ -253,10 +253,12 @@ static void rtw_rx_fill_rx_status(struct rtw_dev *rtwdev, rtw_rx_addr_match(rtwdev, pkt_stat, hdr); - /* Rtl8723cs driver checks for size < 14 or size > 8192 and - * simply drops the packet. + /* + * Rtl8723cs and rtl8723bs drivers check for size < 14 or size > 8192 + * and simply drop the packet. */ - if (rtwdev->chip->id == RTW_CHIP_TYPE_8703B && pkt_stat->pkt_len == 0) { + if (pkt_stat->pkt_len == 0 && + (rtwdev->chip->id == RTW_CHIP_TYPE_8703B || rtw_is_8723bs(rtwdev))) { rx_status->flag |= RX_FLAG_NO_PSDU; rtw_dbg(rtwdev, RTW_DBG_RX, "zero length packet"); } -- 2.55.0