iommu: iova: Export symbols
Use EXPORT_SYMBOL_GPL() to export the iova library symbols. The symbols include: init_iova_domain(); iova_cache_get(); iova_cache_put(); iova_cache_init(); alloc_iova(); find_iova(); __free_iova(); free_iova(); put_iova_domain(); reserve_iova(); copy_reserved_iova(); Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
09e8b485ee
commit
11e33955b9
1 changed files with 10 additions and 0 deletions
|
@ -38,6 +38,7 @@ init_iova_domain(struct iova_domain *iovad, unsigned long granule,
|
||||||
iovad->start_pfn = start_pfn;
|
iovad->start_pfn = start_pfn;
|
||||||
iovad->dma_32bit_pfn = pfn_32bit;
|
iovad->dma_32bit_pfn = pfn_32bit;
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(init_iova_domain);
|
||||||
|
|
||||||
static struct rb_node *
|
static struct rb_node *
|
||||||
__get_cached_rbnode(struct iova_domain *iovad, unsigned long *limit_pfn)
|
__get_cached_rbnode(struct iova_domain *iovad, unsigned long *limit_pfn)
|
||||||
|
@ -243,6 +244,7 @@ int iova_cache_get(void)
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(iova_cache_get);
|
||||||
|
|
||||||
void iova_cache_put(void)
|
void iova_cache_put(void)
|
||||||
{
|
{
|
||||||
|
@ -256,6 +258,7 @@ void iova_cache_put(void)
|
||||||
kmem_cache_destroy(iova_cache);
|
kmem_cache_destroy(iova_cache);
|
||||||
mutex_unlock(&iova_cache_mutex);
|
mutex_unlock(&iova_cache_mutex);
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(iova_cache_put);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* alloc_iova - allocates an iova
|
* alloc_iova - allocates an iova
|
||||||
|
@ -296,6 +299,7 @@ alloc_iova(struct iova_domain *iovad, unsigned long size,
|
||||||
|
|
||||||
return new_iova;
|
return new_iova;
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(alloc_iova);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* find_iova - find's an iova for a given pfn
|
* find_iova - find's an iova for a given pfn
|
||||||
|
@ -336,6 +340,7 @@ struct iova *find_iova(struct iova_domain *iovad, unsigned long pfn)
|
||||||
spin_unlock_irqrestore(&iovad->iova_rbtree_lock, flags);
|
spin_unlock_irqrestore(&iovad->iova_rbtree_lock, flags);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(find_iova);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* __free_iova - frees the given iova
|
* __free_iova - frees the given iova
|
||||||
|
@ -354,6 +359,7 @@ __free_iova(struct iova_domain *iovad, struct iova *iova)
|
||||||
spin_unlock_irqrestore(&iovad->iova_rbtree_lock, flags);
|
spin_unlock_irqrestore(&iovad->iova_rbtree_lock, flags);
|
||||||
free_iova_mem(iova);
|
free_iova_mem(iova);
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(__free_iova);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* free_iova - finds and frees the iova for a given pfn
|
* free_iova - finds and frees the iova for a given pfn
|
||||||
|
@ -371,6 +377,7 @@ free_iova(struct iova_domain *iovad, unsigned long pfn)
|
||||||
__free_iova(iovad, iova);
|
__free_iova(iovad, iova);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(free_iova);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* put_iova_domain - destroys the iova doamin
|
* put_iova_domain - destroys the iova doamin
|
||||||
|
@ -393,6 +400,7 @@ void put_iova_domain(struct iova_domain *iovad)
|
||||||
}
|
}
|
||||||
spin_unlock_irqrestore(&iovad->iova_rbtree_lock, flags);
|
spin_unlock_irqrestore(&iovad->iova_rbtree_lock, flags);
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(put_iova_domain);
|
||||||
|
|
||||||
static int
|
static int
|
||||||
__is_range_overlap(struct rb_node *node,
|
__is_range_overlap(struct rb_node *node,
|
||||||
|
@ -482,6 +490,7 @@ finish:
|
||||||
spin_unlock_irqrestore(&iovad->iova_rbtree_lock, flags);
|
spin_unlock_irqrestore(&iovad->iova_rbtree_lock, flags);
|
||||||
return iova;
|
return iova;
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(reserve_iova);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* copy_reserved_iova - copies the reserved between domains
|
* copy_reserved_iova - copies the reserved between domains
|
||||||
|
@ -508,6 +517,7 @@ copy_reserved_iova(struct iova_domain *from, struct iova_domain *to)
|
||||||
}
|
}
|
||||||
spin_unlock_irqrestore(&from->iova_rbtree_lock, flags);
|
spin_unlock_irqrestore(&from->iova_rbtree_lock, flags);
|
||||||
}
|
}
|
||||||
|
EXPORT_SYMBOL_GPL(copy_reserved_iova);
|
||||||
|
|
||||||
struct iova *
|
struct iova *
|
||||||
split_and_remove_iova(struct iova_domain *iovad, struct iova *iova,
|
split_and_remove_iova(struct iova_domain *iovad, struct iova *iova,
|
||||||
|
|
Loading…
Add table
Reference in a new issue