Re: [PATCH v13 1/6] iommu: Deprecate Intel and AMD cmdline methods to enable strict mode

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2021-06-16 12:03, John Garry wrote:
Now that the x86 drivers support iommu.strict, deprecate the custom
methods.

Signed-off-by: John Garry <john.garry@xxxxxxxxxx>
---
  Documentation/admin-guide/kernel-parameters.txt | 5 +++--
  drivers/iommu/amd/init.c                        | 4 +++-
  drivers/iommu/intel/iommu.c                     | 1 +
  3 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 30e9dd52464e..fcbb36d6eea7 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -290,7 +290,8 @@
  	amd_iommu=	[HW,X86-64]
  			Pass parameters to the AMD IOMMU driver in the system.
  			Possible values are:
-			fullflush - enable flushing of IO/TLB entries when
+			fullflush   [Deprecated, use iommu.strict instead]
+				  - enable flushing of IO/TLB entries when
  				    they are unmapped. Otherwise they are
  				    flushed before they will be reused, which
  				    is a lot of faster
@@ -1947,7 +1948,7 @@
  			bypassed by not enabling DMAR with this option. In
  			this case, gfx device will use physical address for
  			DMA.
-		strict [Default Off]
+		strict [Default Off] [Deprecated, use iommu.strict instead]
  			With this option on every unmap_single operation will
  			result in a hardware IOTLB flush operation as opposed
  			to batching them for performance.

FWIW I'd be inclined to replace both whole descriptions with just something like "Deprecated, equivalent to iommu.strict=1".

diff --git a/drivers/iommu/amd/init.c b/drivers/iommu/amd/init.c
index 46280e6e1535..9f3096d650aa 100644
--- a/drivers/iommu/amd/init.c
+++ b/drivers/iommu/amd/init.c
@@ -3098,8 +3098,10 @@ static int __init parse_amd_iommu_intr(char *str)
  static int __init parse_amd_iommu_options(char *str)
  {
  	for (; *str; ++str) {
-		if (strncmp(str, "fullflush", 9) == 0)
+		if (strncmp(str, "fullflush", 9) == 0) {
+			pr_warn("amd_iommu=fullflush deprecated; use iommu.strict instead\n");

Nit: maybe we should spell out "...use <option>=1 instead" in all of these messages just in case anyone takes them literally? (I'm not sure the options parse correctly with no argument)

Either way,

Acked-by: Robin Murphy <robin.murphy@xxxxxxx>

Thanks,
Robin.

  			amd_iommu_unmap_flush = true;
+		}
  		if (strncmp(str, "force_enable", 12) == 0)
  			amd_iommu_force_enable = true;
  		if (strncmp(str, "off", 3) == 0)
diff --git a/drivers/iommu/intel/iommu.c b/drivers/iommu/intel/iommu.c
index bd93c7ec879e..821d8227a4e6 100644
--- a/drivers/iommu/intel/iommu.c
+++ b/drivers/iommu/intel/iommu.c
@@ -454,6 +454,7 @@ static int __init intel_iommu_setup(char *str)
  			pr_warn("intel_iommu=forcedac deprecated; use iommu.forcedac instead\n");
  			iommu_dma_forcedac = true;
  		} else if (!strncmp(str, "strict", 6)) {
+			pr_warn("intel_iommu=strict deprecated; use iommu.strict instead\n");
  			pr_info("Disable batched IOTLB flush\n");
  			intel_iommu_strict = 1;
  		} else if (!strncmp(str, "sp_off", 6)) {




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux