diff options
author | Joerg Roedel <jroedel@suse.de> | 2016-07-07 15:31:13 +0200 |
---|---|---|
committer | Joerg Roedel <jroedel@suse.de> | 2016-07-14 10:21:15 +0200 |
commit | d26592a93ddb7a73cbd82b08e2e0d2985d68d750 (patch) | |
tree | 931bc4de02657cd2ee00eb2024ed08b80c502a58 /drivers/iommu | |
parent | 80187fd39dcb30e3aa39e93a87b2d2f7fc8f4fd5 (diff) | |
download | op-kernel-dev-d26592a93ddb7a73cbd82b08e2e0d2985d68d750.zip op-kernel-dev-d26592a93ddb7a73cbd82b08e2e0d2985d68d750.tar.gz |
iommu/amd: Use dev_data->domain in get_domain()
Using the cached value is much more efficient than calling
into the IOMMU core code.
Signed-off-by: Joerg Roedel <jroedel@suse.de>
Diffstat (limited to 'drivers/iommu')
-rw-r--r-- | drivers/iommu/amd_iommu.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/iommu/amd_iommu.c b/drivers/iommu/amd_iommu.c index acad37c..155a3e6 100644 --- a/drivers/iommu/amd_iommu.c +++ b/drivers/iommu/amd_iommu.c @@ -2215,16 +2215,11 @@ static void queue_add(struct dma_ops_domain *dma_dom, static struct protection_domain *get_domain(struct device *dev) { struct protection_domain *domain; - struct iommu_domain *io_domain; if (!check_device(dev)) return ERR_PTR(-EINVAL); - io_domain = iommu_get_domain_for_dev(dev); - if (!io_domain) - return NULL; - - domain = to_pdomain(io_domain); + domain = get_dev_data(dev)->domain; if (!dma_ops_domain(domain)) return ERR_PTR(-EBUSY); |