[PATCH v4 02/23] lib/scatterlist: add flag for indicating P2PDMA segments in an SGL

Chaitanya Kulkarni chaitanyak at nvidia.com
Mon Dec 13 13:55:04 PST 2021


On 11/17/21 1:53 PM, Logan Gunthorpe wrote:
> Make use of the third free LSB in scatterlist's page_link on 64bit systems.
> 
> The extra bit will be used by dma_[un]map_sg_p2pdma() to determine when a
> given SGL segments dma_address points to a PCI bus address.
> dma_unmap_sg_p2pdma() will need to perform different cleanup when a
> segment is marked as a bus address.
> 
> Create a CONFIG_NEED_SG_DMA_BUS_ADDR_FLAG bool which depends on
> CONFIG_64BIT (so there is space in the page link for the new flag).
> CONFIG_PCI_P2PDMA will then depend on this so this means PCI P2PDMA will
> require CONFIG_64BIT. This should be acceptable as the majority of P2PDMA
> use cases are restricted to newer root complexes and roughly require the
> extra address space for memory BARs used in the transactions.
> 
> Signed-off-by: Logan Gunthorpe <logang at deltatee.com>

Looks good.

Reviewed-by: Chaitanya Kulkarni <kch at nvidia.com>



More information about the Linux-nvme mailing list