All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lorenzo Bianconi <lorenzo.bianconi@oss.qualcomm.com>
To: Baochen Qiang <baochen.qiang@oss.qualcomm.com>
Cc: Jeff Johnson <jjohnson@kernel.org>,
	Vasanthakumar Thiagarajan
	<vasanthakumar.thiagarajan@oss.qualcomm.com>,
	Ripan Deuri <quic_rdeuri@quicinc.com>,
	P Praneesh <quic_ppranees@quicinc.com>,
	Kalle Valo <kvalo@kernel.org>,
	Jeff Johnson <jeff.johnson@oss.qualcomm.com>,
	linux-wireless@vger.kernel.org, ath12k@lists.infradead.org
Subject: Re: [PATCH 3/3] wifi: ath12k: rely on page_pool APIs for buffer allocation
Date: Fri, 9 Oct 2026 18:35:52 +0200	[thread overview]
Message-ID: <askX6OVi1grqRgL7@lore-desk> (raw)
In-Reply-To: <934b1a06-48ee-47d7-b985-c3e7221d7880@oss.qualcomm.com>

[-- Attachment #1: Type: text/plain, Size: 1705 bytes --]

> 
> 
> On 10/8/2026 9:16 PM, Lorenzo Bianconi wrote:
> > Convert the Rx refill buffers to the page_pool API instead of allocating
> > an skb with dev_alloc_skb() and mapping it with dma_map_single(). The pool
> > handles the DMA mapping and buffer recycling.
> > 
> > Add a page_pool to struct dp_rxdma_ring, created in
> > ath12k_dp_rxdma_ring_buf_setup() and destroyed in
> > ath12k_dp_rxdma_ring_buf_cleanup().
> > 
> > Update ath12k_dp_unmap_rx_buf() to sync page_pool buffers for the CPU
> > instead of unmapping them, and guard the teardown paths
> > (ath12k_dp_cc_cleanup(), ath12k_dp_h_msdu_buffer_type()) against
> > page_pool buffers. In the re-inject path, sync an already mapped
> > page_pool buffer for the device instead of mapping it again, and fill the
> > descriptor with the DMA address stored in the rxcb.
> > 
> > The monitor, CE and TX paths are left unchanged.
> > 
> > This is just preliminary support: the goal is to use a single page to map
> > two separated fragments of 2048B.
> 
> why? please always justify your motivation in detail when the change is not trival.

my main goal here would be to avoid running dev_alloc_skb()/dma_{map,unmap}() on every
rx packets but rely on page_pool APIs in order to recycles and keep pages DMA
mapped. I guess this way we will have even a smaller memory footprint.

> 
> Besides, instead of preliminary patches, why not just send the full support in a single
> series?
> 

I would like to implement it incrementally (you can find the code here [0]) but
I am fine to squash patches in the next iteration.

Regards,
Lorenzo

[0] https://github.com/LorenzoBianconi/wireless-next/tree/b4/ath12k-pp-dev

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

      reply	other threads:[~2026-10-09 16:35 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-08 13:15 [PATCH 0/3] wifi: ath12k: add page_pool support for rx data path Lorenzo Bianconi
2026-10-08 13:15 ` [PATCH 1/3] wifi: ath12k: fix datapath lookup in ath12k_wifi7_dp_rx_process_err() Lorenzo Bianconi
2026-10-08 14:34   ` Jeff Johnson
2026-10-08 15:05     ` Lorenzo Bianconi
2026-10-08 13:15 ` [PATCH 2/3] wifi: ath12k: fix DMA direction for re-injected Rx buffers Lorenzo Bianconi
2026-10-08 13:16 ` [PATCH 3/3] wifi: ath12k: rely on page_pool APIs for buffer allocation Lorenzo Bianconi
2026-10-09 10:24   ` Baochen Qiang
2026-10-09 16:35     ` Lorenzo Bianconi [this message]

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=askX6OVi1grqRgL7@lore-desk \
    --to=lorenzo.bianconi@oss.qualcomm.com \
    --cc=ath12k@lists.infradead.org \
    --cc=baochen.qiang@oss.qualcomm.com \
    --cc=jeff.johnson@oss.qualcomm.com \
    --cc=jjohnson@kernel.org \
    --cc=kvalo@kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=quic_ppranees@quicinc.com \
    --cc=quic_rdeuri@quicinc.com \
    --cc=vasanthakumar.thiagarajan@oss.qualcomm.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.