linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/4] AMD IOMMU: Assign/de-assign complete alias groups
@ 2014-08-26  9:36 Joerg Roedel
  2014-08-26  9:36 ` [PATCH 1/4] iommu/amd: Move struct iommu_dev_data to amd_iommu.c Joerg Roedel
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Joerg Roedel @ 2014-08-26  9:36 UTC (permalink / raw)
  To: iommu; +Cc: linux-kernel, Joerg Roedel

Hi,

Here is a patch-set to fix the following issue:

When a device is added to an iommu domain, the current amd
iommu code will add the device itself and the device it
aliases to to the domain. But this alias relation is
uni-directional.

If, for example, device 03:00.1 aliases to 03:00.0 and is
added to a domain, the iommu code will add both devices.
But if 03.00.0 is added, 03.00.1 will be not.

This is a problem with some broken devices that appear with
function 0 on the bus but use function 1 as the request-id.
These devices will not work with the current implementation.

This patch-set changes the behavior of the code by
introducing alias-groups (similar to iommu-groups, but
support non-existent pci devices) and always
assigns/de-assigns complete alias groups to/from a domain.

This makes the alias relation bi-directional and fixes the
issues with broken devices.

Thanks,

	Joerg

Joerg Roedel (4):
  iommu/amd: Move struct iommu_dev_data to amd_iommu.c
  iommu/amd: Keep a list of devices in an alias group
  iommu/amd: Attach and detach complete alias group
  iommu/amd: Remove device binding reference count

 drivers/iommu/amd_iommu.c       | 74 +++++++++++++++++++++++++----------------
 drivers/iommu/amd_iommu_types.h | 21 ------------
 2 files changed, 46 insertions(+), 49 deletions(-)

-- 
1.9.1


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-08-26  9:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-26  9:36 [PATCH 0/4] AMD IOMMU: Assign/de-assign complete alias groups Joerg Roedel
2014-08-26  9:36 ` [PATCH 1/4] iommu/amd: Move struct iommu_dev_data to amd_iommu.c Joerg Roedel
2014-08-26  9:36 ` [PATCH 2/4] iommu/amd: Keep a list of devices in an alias group Joerg Roedel
2014-08-26  9:36 ` [PATCH 3/4] iommu/amd: Attach and detach complete " Joerg Roedel
2014-08-26  9:36 ` [PATCH 4/4] iommu/amd: Remove device binding reference count Joerg Roedel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).