[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YkwxY59ACqFF9jer@lahna>
Date: Tue, 5 Apr 2022 15:09:07 +0300
From: Mika Westerberg <mika.westerberg@...ux.intel.com>
To: Robin Murphy <robin.murphy@....com>
Cc: joro@...tes.org, baolu.lu@...ux.intel.com,
andreas.noever@...il.com, michael.jamet@...el.com,
YehezkelShB@...il.com, iommu@...ts.linux-foundation.org,
linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org,
mario.limonciello@....com, hch@....de
Subject: Re: [PATCH v3 3/4] thunderbolt: Make iommu_dma_protection more
accurate
On Tue, Apr 05, 2022 at 11:41:03AM +0100, Robin Murphy wrote:
> Between me trying to get rid of iommu_present() and Mario wanting to
> support the AMD equivalent of DMAR_PLATFORM_OPT_IN, scrutiny has shown
> that the iommu_dma_protection attribute is being far too optimistic.
> Even if an IOMMU might be present for some PCI segment in the system,
> that doesn't necessarily mean it provides translation for the device(s)
> we care about. Furthermore, all that DMAR_PLATFORM_OPT_IN really does
> is tell us that memory was protected before the kernel was loaded, and
> prevent the user from disabling the intel-iommu driver entirely. While
> that lets us assume kernel integrity, what matters for actual runtime
> DMA protection is whether we trust individual devices, based on the
> "external facing" property that we expect firmware to describe for
> Thunderbolt ports.
>
> It's proven challenging to determine the appropriate ports accurately
> given the variety of possible topologies, so while still not getting a
> perfect answer, by putting enough faith in firmware we can at least get
> a good bit closer. If we can see that any device near a Thunderbolt NHI
> has all the requisites for Kernel DMA Protection, chances are that it
> *is* a relevant port, but moreover that implies that firmware is playing
> the game overall, so we'll use that to assume that all Thunderbolt ports
> should be correctly marked and thus will end up fully protected.
>
> CC: Mario Limonciello <mario.limonciello@....com>
> Reviewed-by: Christoph Hellwig <hch@....de>
> Signed-off-by: Robin Murphy <robin.murphy@....com>
Acked-by: Mika Westerberg <mika.westerberg@...ux.intel.com>
Powered by blists - more mailing lists