iommu/amd: Check if domain is NULL in get_domain() and return -EBUSY
PATCH v2 1/1 iommu/amd: Check if domain is NULL in get_domain() and return -EBUSY
In get_domain(), 'domain' could be NULL before it's passed to dma_ops_domain() to dereference. And the current code calling get_domain() can't deal with the returned 'domain' well if its value is NULL.
So before dma_ops_domain() calling, check if 'domain' is NULL, If yes just return ERR_PTR(-EBUSY) directly.
Reported-by Dan Carpenter <[email protected]>
Fixes df3f7a6e8e85 ('iommu/amd: Use is_attach_deferred call-back')
Signed-off-by Baoquan He <[email protected]>
--- drivers/iommu/amd_iommu.c | 3 +++ 1 file changed, 3 insertions(+)
drivers/iommu/amd_iommu.c +3 -0
@@ -2262,6 +2262,9 @@ static struct protection_domain *get_domain(struct device *dev) domain =to_pdomain (io_domain);attach_device (dev, domain); } +if (domain ==NULL ) +return ERR_PTR (-EBUSY ); +if (!dma_ops_domain (domain))return ERR_PTR (-EBUSY );
Signature · 1 line
2.5.5