Re: [PATCH v4 8/8] swiotlb: search the software IO TLB only if a device makes use of it

From: Petr Tesařík
Date: Thu Jul 20 2023 - 04:02:49 EST


On Thu, 20 Jul 2023 08:47:44 +0200
Christoph Hellwig <hch@xxxxxx> wrote:

> Any reason this can't just do a list_empty_careful on the list
> instead of adding yet another field that grows struct device?

On which list?

The dma_io_tlb_pools list only contains transient pools, but a device
may use bounce buffers from a regular pool.

The dma_io_tlb_mem.pools list will always be non-empty, unless the
system runs without SWIOTLB.

On a system which does have a SWIOTLB, the flag allows to differentiate
between devices that actually use bounce buffers and devices that do
not (e.g. because they do not have any addressing limitations).

Petr T