Message ID | 20120511225534.30496.54563.stgit@bling.home |
---|---|
State | Superseded |
Headers | show |
On Fri, May 11, 2012 at 04:55:35PM -0600, Alex Williamson wrote: > IOMMU groups allow IOMMU drivers to represent DMA visibility > and isolation of devices. Multiple devices may be grouped > together for the purposes of DMA. Placing a pointer on > struct device enable easy access for things like streaming > DMA programming and drivers like VFIO. > > Signed-off-by: Alex Williamson <alex.williamson@redhat.com> Can't you get this today from the iommu_ops pointer that is on the bus that the device is associated with? Or can devices on a bus have different iommu_group pointers? thanks, greg k-h -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, 2012-05-11 at 16:38 -0700, Greg KH wrote: > On Fri, May 11, 2012 at 04:55:35PM -0600, Alex Williamson wrote: > > IOMMU groups allow IOMMU drivers to represent DMA visibility > > and isolation of devices. Multiple devices may be grouped > > together for the purposes of DMA. Placing a pointer on > > struct device enable easy access for things like streaming > > DMA programming and drivers like VFIO. > > > > Signed-off-by: Alex Williamson <alex.williamson@redhat.com> > > Can't you get this today from the iommu_ops pointer that is on the bus > that the device is associated with? Or can devices on a bus have > different iommu_group pointers? The latter, each device on a bus might be it's own group. This is often the case on x86 unless PCIe-to-PCI bridges obscure the device visibility. Thanks, Alex -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, May 11, 2012 at 05:58:01PM -0600, Alex Williamson wrote: > On Fri, 2012-05-11 at 16:38 -0700, Greg KH wrote: > > On Fri, May 11, 2012 at 04:55:35PM -0600, Alex Williamson wrote: > > > IOMMU groups allow IOMMU drivers to represent DMA visibility > > > and isolation of devices. Multiple devices may be grouped > > > together for the purposes of DMA. Placing a pointer on > > > struct device enable easy access for things like streaming > > > DMA programming and drivers like VFIO. > > > > > > Signed-off-by: Alex Williamson <alex.williamson@redhat.com> > > > > Can't you get this today from the iommu_ops pointer that is on the bus > > that the device is associated with? Or can devices on a bus have > > different iommu_group pointers? > > The latter, each device on a bus might be it's own group. This is often > the case on x86 unless PCIe-to-PCI bridges obscure the device > visibility. Thanks, Ah, ok, then I have no objection to add this to struct device: Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/include/linux/device.h b/include/linux/device.h index 5ad17cc..13dd26b 100644 --- a/include/linux/device.h +++ b/include/linux/device.h @@ -35,6 +35,7 @@ struct subsys_private; struct bus_type; struct device_node; struct iommu_ops; +struct iommu_group; struct bus_attribute { struct attribute attr; @@ -677,6 +678,7 @@ struct device { const struct attribute_group **groups; /* optional groups */ void (*release)(struct device *dev); + struct iommu_group *iommu_group; }; /* Get the wakeup routines, which depend on struct device */
IOMMU groups allow IOMMU drivers to represent DMA visibility and isolation of devices. Multiple devices may be grouped together for the purposes of DMA. Placing a pointer on struct device enable easy access for things like streaming DMA programming and drivers like VFIO. Signed-off-by: Alex Williamson <alex.williamson@redhat.com> --- include/linux/device.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html