[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20210607182541.119756-1-namit@vmware.com>
Date: Mon, 7 Jun 2021 11:25:35 -0700
From: Nadav Amit <nadav.amit@...il.com>
To: Joerg Roedel <joro@...tes.org>
Cc: Nadav Amit <namit@...are.com>, Will Deacon <will@...nel.org>,
Jiajun Cao <caojiajun@...are.com>,
Robin Murphy <robin.murphy@....com>,
Lu Baolu <baolu.lu@...ux.intel.com>,
iommu@...ts.linux-foundation.org, linux-kernel@...r.kernel.org
Subject: [PATCH v3 0/6] iommu/amd: Enable page-selective flushes
From: Nadav Amit <namit@...are.com>
The previous patch, commit 268aa4548277 ("iommu/amd: Page-specific
invalidations for more than one page") was supposed to enable
page-selective IOTLB flushes on AMD.
Besides the bug that was already fixed by commit a017c567915f
("iommu/amd: Fix wrong parentheses on page-specific invalidations")
there are several remaining matters to enable and benefit from
page-selective IOTLB flushes on AMD:
1. Enable selective flushes on unmap (patch 1)
2. Avoid using flush-queue on vIOMMUs (patch 2)
3. Relaxed flushes when gathering, excluding vIOMMUs (patches 3-5)
4. Syncing once on scatter-gather map operations (patch 6)
Cc: Joerg Roedel <joro@...tes.org>
Cc: Will Deacon <will@...nel.org>
Cc: Jiajun Cao <caojiajun@...are.com>
Cc: Robin Murphy <robin.murphy@....com>
Cc: Lu Baolu <baolu.lu@...ux.intel.com>
Cc: iommu@...ts.linux-foundation.org
Cc: linux-kernel@...r.kernel.org
---
v2->v3:
* Rebase on v5.13-rc5
* Refactoring (patches 4-5) [Robin]
* Rework flush logic (patch 5): more relaxed on native
* Syncing once on scatter-gather operations (patch 6)
v1->v2:
* Rebase on v5.13-rc3
Nadav Amit (5):
iommu/amd: Selective flush on unmap
iommu/amd: Do not use flush-queue when NpCache is on
iommu: Factor iommu_iotlb_gather_is_disjoint() out
iommu/amd: Tailored gather logic for AMD
iommu/amd: Sync once for scatter-gather operations
Robin Murphy (1):
iommu: Improve iommu_iotlb_gather helpers
drivers/iommu/amd/init.c | 7 +++-
drivers/iommu/amd/iommu.c | 72 ++++++++++++++++++++++++++++++---
drivers/iommu/mtk_iommu.c | 5 +--
include/linux/iommu.h | 84 +++++++++++++++++++++++++++++++++------
4 files changed, 145 insertions(+), 23 deletions(-)
--
2.25.1
Powered by blists - more mailing lists