• Rajkumar Manoharan's avatar
    ath10k: optimize ce_lock on post rx buffer processing · ab4e3db0
    Rajkumar Manoharan authored
    After processing received packets from copy engine, host will allocate
    new buffer and queue them back to copy engine ring for further
    packet reception. On post rx processing path, skb allocation and
    dma mapping are unnecessarily handled within ce_lock. This is affecting
    peak throughput and also causing more CPU consumption. Optimize this
    by acquiring ce_lock only when accessing copy engine ring and moving
    skb allocation out of ce_lock.
    
    In AP148 platform with QCA99x0 in conducted environment, UDP uplink peak
    throughput is improved from ~1320 Mbps to ~1450 Mbps and TCP uplink peak
    throughput is increased from ~1240 Mbps (70% host CPU load) to ~1300 Mbps
    (71% CPU load). Similarly ~40Mbps improvement is observed in downlink
    path.
    Signed-off-by: default avatarRajkumar Manoharan <rmanohar@qti.qualcomm.com>
    Signed-off-by: default avatarKalle Valo <kvalo@qca.qualcomm.com>
    ab4e3db0
pci.c 75.5 KB