Skip to content

Commit d86724d

Browse files
yiliu1765jgunthorpe
authored andcommitted
iommu/vt-d: Make domain attach helpers to be extern
This makes the helpers visible to nested.c. Link: https://lore.kernel.org/r/20231026044216.64964-6-yi.l.liu@intel.com Suggested-by: Lu Baolu <baolu.lu@linux.intel.com> Reviewed-by: Kevin Tian <kevin.tian@intel.com> Reviewed-by: Lu Baolu <baolu.lu@linux.intel.com> Signed-off-by: Yi Liu <yi.l.liu@intel.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
1 parent 111bf85 commit d86724d

File tree

2 files changed

+13
-9
lines changed

2 files changed

+13
-9
lines changed

drivers/iommu/intel/iommu.c

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,6 @@ static LIST_HEAD(dmar_satc_units);
282282
#define for_each_rmrr_units(rmrr) \
283283
list_for_each_entry(rmrr, &dmar_rmrr_units, list)
284284

285-
static void device_block_translation(struct device *dev);
286285
static void intel_iommu_domain_free(struct iommu_domain *domain);
287286

288287
int dmar_disabled = !IS_ENABLED(CONFIG_INTEL_IOMMU_DEFAULT_ON);
@@ -561,7 +560,7 @@ static unsigned long domain_super_pgsize_bitmap(struct dmar_domain *domain)
561560
}
562561

563562
/* Some capabilities may be different across iommus */
564-
static void domain_update_iommu_cap(struct dmar_domain *domain)
563+
void domain_update_iommu_cap(struct dmar_domain *domain)
565564
{
566565
domain_update_iommu_coherency(domain);
567566
domain->iommu_superpage = domain_update_iommu_superpage(domain, NULL);
@@ -1779,8 +1778,7 @@ static struct dmar_domain *alloc_domain(unsigned int type)
17791778
return domain;
17801779
}
17811780

1782-
static int domain_attach_iommu(struct dmar_domain *domain,
1783-
struct intel_iommu *iommu)
1781+
int domain_attach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu)
17841782
{
17851783
struct iommu_domain_info *info, *curr;
17861784
unsigned long ndomains;
@@ -1829,8 +1827,7 @@ static int domain_attach_iommu(struct dmar_domain *domain,
18291827
return ret;
18301828
}
18311829

1832-
static void domain_detach_iommu(struct dmar_domain *domain,
1833-
struct intel_iommu *iommu)
1830+
void domain_detach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu)
18341831
{
18351832
struct iommu_domain_info *info;
18361833

@@ -3975,7 +3972,7 @@ static void dmar_remove_one_dev_info(struct device *dev)
39753972
* all DMA requests without PASID from the device are blocked. If the page
39763973
* table has been set, clean up the data structures.
39773974
*/
3978-
static void device_block_translation(struct device *dev)
3975+
void device_block_translation(struct device *dev)
39793976
{
39803977
struct device_domain_info *info = dev_iommu_priv_get(dev);
39813978
struct intel_iommu *iommu = info->iommu;
@@ -4128,8 +4125,8 @@ static void intel_iommu_domain_free(struct iommu_domain *domain)
41284125
domain_exit(to_dmar_domain(domain));
41294126
}
41304127

4131-
static int prepare_domain_attach_device(struct iommu_domain *domain,
4132-
struct device *dev)
4128+
int prepare_domain_attach_device(struct iommu_domain *domain,
4129+
struct device *dev)
41334130
{
41344131
struct dmar_domain *dmar_domain = to_dmar_domain(domain);
41354132
struct intel_iommu *iommu;

drivers/iommu/intel/iommu.h

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -878,6 +878,13 @@ int qi_submit_sync(struct intel_iommu *iommu, struct qi_desc *desc,
878878
*/
879879
#define QI_OPT_WAIT_DRAIN BIT(0)
880880

881+
int domain_attach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu);
882+
void domain_detach_iommu(struct dmar_domain *domain, struct intel_iommu *iommu);
883+
void device_block_translation(struct device *dev);
884+
int prepare_domain_attach_device(struct iommu_domain *domain,
885+
struct device *dev);
886+
void domain_update_iommu_cap(struct dmar_domain *domain);
887+
881888
int dmar_ir_support(void);
882889

883890
void *alloc_pgtable_page(int node, gfp_t gfp);

0 commit comments

Comments
 (0)