[PATCH] ath11k: Add peer rhash table support

Karthikeyan Periyasamy (QUIC) quic_periyasa at quicinc.com
Wed Dec 29 17:50:56 PST 2021


> -----Original Message-----
> From: Felix Fietkau <nbd at nbd.name>
> Sent: Thursday, December 23, 2021 2:29 PM
> To: Karthikeyan Periyasamy (QUIC) <quic_periyasa at quicinc.com>;
> ath11k at lists.infradead.org
> Cc: linux-wireless at vger.kernel.org
> Subject: Re: [PATCH] ath11k: Add peer rhash table support
> 
> WARNING: This email originated from outside of Qualcomm. Please be wary
> of any links or attachments, and do not enable macros.
> 
> On 2021-12-23 09:27, Karthikeyan Periyasamy wrote:
> > When more clients (128) are connected, the UL data traffic KPI
> > measurement is low compared to single client. This issue is due to
> > more CPU cycles spent on the peer lookup operation with more clients.
> > So reduce the peer lookup operation by modifying the linear based
> > lookup operation into the rhash based lookup operation. This improve
> > the peak throughput measurement. Since this is a software algorithm
> > change, it is applicable for all the platforms.
> >
> > TCP UL 128 Clients test case Observation (64bit system):
> > Previous: ~550 Mbps
> > Now   : ~860 Mbps
> >
> > Tested-on: QCN9074 hw1.0 PCI
> > WLAN.HK.2.5.0.1-01067-QCAHKSWPL_SILICONZ-1
> >
> > Signed-off-by: Karthikeyan Periyasamy <quic_periyasa at quicinc.com>
> Why does ath11k keep a separate peer list instead of just using the sta
> entry? That seems ugly and inefficient...

Atheros driver keep the peer list to track the peer entries that firmware is aware of peer_id across the SOC not per radio.
STA entry is per radio/hw not per SOC. It can't fulfill the requirement to map the SOC level peer_id to the peer list. Also firmware
map the AST index / peer id to the peer entries. So driver keeps the peer list, which help to drive the firmware. 
In this patch, we efficiently reduce the peer lookup operation.

Thanks,
Karthikeyan P


More information about the ath11k mailing list