diff options
author | Muli Ben-Yehuda <muli@il.ibm.com> | 2007-07-21 17:11:06 +0200 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-07-21 18:37:12 -0700 |
commit | 3cc39bda26c90782f98305c34a7f769819784a61 (patch) | |
tree | 173d70ca1c58108041d71abec04cf5662cbccd44 | |
parent | 0b11e1c6a604014283af70e27e0f32971407fd6d (diff) | |
download | talos-op-linux-3cc39bda26c90782f98305c34a7f769819784a61.tar.gz talos-op-linux-3cc39bda26c90782f98305c34a7f769819784a61.zip |
x86_64: Calgary - fold in redundant functions
After the bitmap changes we can get rid of the unlocked versions of
calgary_unmap_sg and iommu_free. Fold __calgary_unmap_sg and
__iommu_free into their calgary_unmap_sg and iommu_free, respectively.
Signed-off-by: Muli Ben-Yehuda <muli@il.ibm.com>
Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r-- | arch/x86_64/kernel/pci-calgary.c | 30 |
1 files changed, 9 insertions, 21 deletions
diff --git a/arch/x86_64/kernel/pci-calgary.c b/arch/x86_64/kernel/pci-calgary.c index d10fee8c2418..86927d5b8463 100644 --- a/arch/x86_64/kernel/pci-calgary.c +++ b/arch/x86_64/kernel/pci-calgary.c @@ -321,7 +321,7 @@ error: return bad_dma_address; } -static void __iommu_free(struct iommu_table *tbl, dma_addr_t dma_addr, +static void iommu_free(struct iommu_table *tbl, dma_addr_t dma_addr, unsigned int npages) { unsigned long entry; @@ -359,12 +359,6 @@ static void __iommu_free(struct iommu_table *tbl, dma_addr_t dma_addr, spin_unlock_irqrestore(&tbl->it_lock, flags); } -static void iommu_free(struct iommu_table *tbl, dma_addr_t dma_addr, - unsigned int npages) -{ - __iommu_free(tbl, dma_addr, npages); -} - static inline struct iommu_table *find_iommu_table(struct device *dev) { struct pci_dev *pdev; @@ -387,9 +381,14 @@ static inline struct iommu_table *find_iommu_table(struct device *dev) return tbl; } -static void __calgary_unmap_sg(struct iommu_table *tbl, +static void calgary_unmap_sg(struct device *dev, struct scatterlist *sglist, int nelems, int direction) { + struct iommu_table *tbl = find_iommu_table(dev); + + if (!translate_phb(to_pci_dev(dev))) + return; + while (nelems--) { unsigned int npages; dma_addr_t dma = sglist->dma_address; @@ -399,22 +398,11 @@ static void __calgary_unmap_sg(struct iommu_table *tbl, break; npages = num_dma_pages(dma, dmalen); - __iommu_free(tbl, dma, npages); + iommu_free(tbl, dma, npages); sglist++; } } -void calgary_unmap_sg(struct device *dev, struct scatterlist *sglist, - int nelems, int direction) -{ - struct iommu_table *tbl = find_iommu_table(dev); - - if (!translate_phb(to_pci_dev(dev))) - return; - - __calgary_unmap_sg(tbl, sglist, nelems, direction); -} - static int calgary_nontranslate_map_sg(struct device* dev, struct scatterlist *sg, int nelems, int direction) { @@ -466,7 +454,7 @@ static int calgary_map_sg(struct device *dev, struct scatterlist *sg, return nelems; error: - __calgary_unmap_sg(tbl, sg, nelems, direction); + calgary_unmap_sg(dev, sg, nelems, direction); for (i = 0; i < nelems; i++) { sg[i].dma_address = bad_dma_address; sg[i].dma_length = 0; |