diff options
Diffstat (limited to 'arch/x86/kernel/pci-dma.c')
| -rw-r--r-- | arch/x86/kernel/pci-dma.c | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/x86/kernel/pci-dma.c b/arch/x86/kernel/pci-dma.c index 80dc793b3f6..1c4d769e21e 100644 --- a/arch/x86/kernel/pci-dma.c +++ b/arch/x86/kernel/pci-dma.c @@ -45,6 +45,15 @@ int iommu_detected __read_mostly = 0;   */  int iommu_pass_through __read_mostly; +/* + * Group multi-function PCI devices into a single device-group for the + * iommu_device_group interface.  This tells the iommu driver to pretend + * it cannot distinguish between functions of a device, exposing only one + * group for the device.  Useful for disallowing use of individual PCI + * functions from userspace drivers. + */ +int iommu_group_mf __read_mostly; +  extern struct iommu_table_entry __iommu_table[], __iommu_table_end[];  /* Dummy device used for NULL arguments (normally ISA). */ @@ -169,6 +178,8 @@ static __init int iommu_setup(char *p)  #endif  		if (!strncmp(p, "pt", 2))  			iommu_pass_through = 1; +		if (!strncmp(p, "group_mf", 8)) +			iommu_group_mf = 1;  		gart_parse_options(p);  |