From: Baochen Qiang <baochen.qiang@oss.qualcomm.com>
To: Nithyanantham Paramasivam
<nithyanantham.paramasivam@oss.qualcomm.com>,
ath12k@lists.infradead.org
Cc: linux-wireless@vger.kernel.org, tanguy@squaremind.io
Subject: Re: [PATCH ath-next] wifi: ath12k: Fix packets received in WBM error ring with REO LUT enabled
Date: Fri, 11 Jul 2025 17:38:37 +0800 [thread overview]
Message-ID: <3cb437c4-d113-48fc-a672-d8f7fbbd11ff@oss.qualcomm.com> (raw)
In-Reply-To: <20250710011754.559817-1-nithyanantham.paramasivam@oss.qualcomm.com>
On 7/10/2025 9:17 AM, Nithyanantham Paramasivam wrote:
> Currently, packets are being received into the WBM error ring when
> REO queue lookup is enabled, resulting in degraded RX performance.
> The issue arises because the REO queue LUT TID memory reference is
> set to zero-it's being assigned before the memory is allocated.
> Fix this by assigning the REO queue TID memory reference in the LUT
> immediately after memory allocation to ensure correct packet
> processing.
>
> Tested-on: QCN9274 hw2.0 PCI WLAN.WBE.1.3.1-00173-QCAHKSWPL_SILICONZ-1
> Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0.c5-00481-QCAHMTSWPL_V1.0_V2.0_SILICONZ-3
>
> Reported-by: Tanguy Serrat <tanguy@squaremind.io>
> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=220282
> Fixes: 3b9cbce6fdd3 ("wifi: ath12k: alloc REO queue per station")
> Signed-off-by: Nithyanantham Paramasivam <nithyanantham.paramasivam@oss.qualcomm.com>
> ---
> drivers/net/wireless/ath/ath12k/dp_rx.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/ath/ath12k/dp_rx.c b/drivers/net/wireless/ath/ath12k/dp_rx.c
> index ed325aa6322d..65b4c91e4fe5 100644
> --- a/drivers/net/wireless/ath/ath12k/dp_rx.c
> +++ b/drivers/net/wireless/ath/ath12k/dp_rx.c
> @@ -1060,7 +1060,6 @@ int ath12k_dp_rx_peer_tid_setup(struct ath12k *ar, const u8 *peer_mac, int vdev_
> }
>
> rx_tid = &peer->rx_tid[tid];
> - paddr_aligned = rx_tid->qbuf.paddr_aligned;
> /* Update the tid queue if it is already setup */
> if (rx_tid->active) {
> ret = ath12k_peer_rx_tid_reo_update(ar, peer, rx_tid,
> @@ -1072,6 +1071,7 @@ int ath12k_dp_rx_peer_tid_setup(struct ath12k *ar, const u8 *peer_mac, int vdev_
> }
>
> if (!ab->hw_params->reoq_lut_support) {
> + paddr_aligned = rx_tid->qbuf.paddr_aligned;
> ret = ath12k_wmi_peer_rx_reorder_queue_setup(ar, vdev_id,
> peer_mac,
> paddr_aligned, tid,
> @@ -1098,6 +1098,7 @@ int ath12k_dp_rx_peer_tid_setup(struct ath12k *ar, const u8 *peer_mac, int vdev_
> return ret;
> }
>
> + paddr_aligned = rx_tid->qbuf.paddr_aligned;
> if (ab->hw_params->reoq_lut_support) {
> /* Update the REO queue LUT at the corresponding peer id
> * and tid with qaddr.
>
> base-commit: 45bbd91fc41b7cb6319e45e6fd732c5c8a0c44e3
Reviewed-by: Baochen Qiang <quic_bqiang@quicinc.com>
next prev parent reply other threads:[~2025-07-11 10:27 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-10 1:17 [PATCH ath-next] wifi: ath12k: Fix packets received in WBM error ring with REO LUT enabled Nithyanantham Paramasivam
2025-07-11 5:27 ` Vasanthakumar Thiagarajan
2025-07-11 9:38 ` Baochen Qiang [this message]
2025-07-11 14:36 ` Jeff Johnson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3cb437c4-d113-48fc-a672-d8f7fbbd11ff@oss.qualcomm.com \
--to=baochen.qiang@oss.qualcomm.com \
--cc=ath12k@lists.infradead.org \
--cc=linux-wireless@vger.kernel.org \
--cc=nithyanantham.paramasivam@oss.qualcomm.com \
--cc=tanguy@squaremind.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox