Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

iommu: Remove group_mf

The iommu=group_mf is really no longer needed with the addition of ACS
support in IOMMU drivers creating groups. Most multifunction devices
will now be grouped already. If a device has gone to the trouble of
exposing ACS, trust that it works. We can use the device specific ACS
function for fixing devices we trust individually. This largely
reverts bcb71abe.

Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>

authored by

Alex Williamson and committed by
Joerg Roedel
7d43c2e4 783f157b

-16
-1
Documentation/kernel-parameters.txt
··· 1134 1134 forcesac 1135 1135 soft 1136 1136 pt [x86, IA-64] 1137 - group_mf [x86, IA-64] 1138 1137 1139 1138 1140 1139 io7= [HW] IO7 for Marvel based alpha systems
-2
arch/ia64/include/asm/iommu.h
··· 11 11 extern int force_iommu, no_iommu; 12 12 extern int iommu_pass_through; 13 13 extern int iommu_detected; 14 - extern int iommu_group_mf; 15 14 #else 16 15 #define iommu_pass_through (0) 17 16 #define no_iommu (1) 18 17 #define iommu_detected (0) 19 - #define iommu_group_mf (0) 20 18 #endif 21 19 extern void iommu_dma_init(void); 22 20 extern void machvec_init(const char *name);
-1
arch/ia64/kernel/pci-dma.c
··· 32 32 #endif 33 33 34 34 int iommu_pass_through; 35 - int iommu_group_mf; 36 35 37 36 /* Dummy device used for NULL arguments (normally ISA). Better would 38 37 be probably a smaller DMA mask, but this is bug-to-bug compatible
-1
arch/x86/include/asm/iommu.h
··· 5 5 extern int force_iommu, no_iommu; 6 6 extern int iommu_detected; 7 7 extern int iommu_pass_through; 8 - extern int iommu_group_mf; 9 8 10 9 /* 10 seconds */ 11 10 #define DMAR_OPERATION_TIMEOUT ((cycles_t) tsc_khz*10*1000)
-11
arch/x86/kernel/pci-dma.c
··· 45 45 */ 46 46 int iommu_pass_through __read_mostly; 47 47 48 - /* 49 - * Group multi-function PCI devices into a single device-group for the 50 - * iommu_device_group interface. This tells the iommu driver to pretend 51 - * it cannot distinguish between functions of a device, exposing only one 52 - * group for the device. Useful for disallowing use of individual PCI 53 - * functions from userspace drivers. 54 - */ 55 - int iommu_group_mf __read_mostly; 56 - 57 48 extern struct iommu_table_entry __iommu_table[], __iommu_table_end[]; 58 49 59 50 /* Dummy device used for NULL arguments (normally ISA). */ ··· 185 194 #endif 186 195 if (!strncmp(p, "pt", 2)) 187 196 iommu_pass_through = 1; 188 - if (!strncmp(p, "group_mf", 8)) 189 - iommu_group_mf = 1; 190 197 191 198 gart_parse_options(p); 192 199