[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b4b11ebb-4e42-402c-8e9e-48eb57ef34d5@arm.com>
Date: Thu, 2 May 2024 13:50:46 +0100
From: Robin Murphy <robin.murphy@....com>
To: Christoph Hellwig <hch@...radead.org>, "T.J. Mercier"
<tjmercier@...gle.com>
Cc: Joerg Roedel <joro@...tes.org>, Will Deacon <will@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Catalin Marinas <catalin.marinas@....com>, isaacmanjarres@...gle.com,
iommu@...ts.linux.dev, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] iommu/dma: Respect SWIOTLB force_bounce
On 02/05/2024 6:07 am, Christoph Hellwig wrote:
> On Wed, May 01, 2024 at 08:13:18PM +0000, T.J. Mercier wrote:
>> iommu_dma_map_page and iommu_dma_map_sg conditionally use SWIOTLB, but
>> checking if force_bounce is set for the device is not part of that
>> condition. Check if devices have requested to force SWIOTLB use as part
>> of deciding to take the existing SWIOTLB paths.
>
> This fails to explain why you'd want this somewhat surprising behavior,
> and why you consider it a bug fix.
Indeed, it's rather intentional that the "swiotlb=force" argument
doesn't affect iommu-dma, since that's primarily for weeding out drivers
making dodgy assumptions about DMA addresses, and iommu-dma is
inherently even better at that already.
Beyond that I think this change also seems likely to interact badly with
CC_ATTR_GUEST_MEM_ENCRYPT on x86, where we invoke the SWIOTLB_FORCE flag
for dma-direct, but expect that an IOMMU can provide a decrypted view
in-place, thus bouncing in that path would be unnecessarily detrimental.
Thanks,
Robin.
Powered by blists - more mailing lists