2008-07-28 12:28:50

by Joerg Roedel

[permalink] [raw]
Subject: [PATCH] x86 calgary: replace num_dma_pages() with iommu_num_pages()

This patch removes the num_dma_pages() function from Calgary IOMMU code and
replaces it with the generic iommu_num_pages() function.

Cc: Muli Ben-Yehuda <[email protected]>
Signed-off-by: Joerg Roedel <[email protected]>
---
arch/x86/kernel/pci-calgary_64.c | 18 ++++--------------
1 files changed, 4 insertions(+), 14 deletions(-)

diff --git a/arch/x86/kernel/pci-calgary_64.c b/arch/x86/kernel/pci-calgary_64.c
index 2bef2e3..f022a21 100644
--- a/arch/x86/kernel/pci-calgary_64.c
+++ b/arch/x86/kernel/pci-calgary_64.c
@@ -217,16 +217,6 @@ static inline unsigned long verify_bit_range(unsigned long* bitmap,

#endif /* CONFIG_IOMMU_DEBUG */

-static inline unsigned int num_dma_pages(unsigned long dma, unsigned int dmalen)
-{
- unsigned int npages;
-
- npages = PAGE_ALIGN(dma + dmalen) - (dma & PAGE_MASK);
- npages >>= PAGE_SHIFT;
-
- return npages;
-}
-
static inline int translation_enabled(struct iommu_table *tbl)
{
/* only PHBs with translation enabled have an IOMMU table */
@@ -408,7 +398,7 @@ static void calgary_unmap_sg(struct device *dev,
if (dmalen == 0)
break;

- npages = num_dma_pages(dma, dmalen);
+ npages = iommu_num_pages(dma, dmalen);
iommu_free(tbl, dma, npages);
}
}
@@ -427,7 +417,7 @@ static int calgary_map_sg(struct device *dev, struct scatterlist *sg,
BUG_ON(!sg_page(s));

vaddr = (unsigned long) sg_virt(s);
- npages = num_dma_pages(vaddr, s->length);
+ npages = iommu_num_pages(vaddr, s->length);

entry = iommu_range_alloc(dev, tbl, npages);
if (entry == bad_dma_address) {
@@ -464,7 +454,7 @@ static dma_addr_t calgary_map_single(struct device *dev, phys_addr_t paddr,
struct iommu_table *tbl = find_iommu_table(dev);

uaddr = (unsigned long)vaddr;
- npages = num_dma_pages(uaddr, size);
+ npages = iommu_num_pages(uaddr, size);

return iommu_alloc(dev, tbl, vaddr, npages, direction);
}
@@ -475,7 +465,7 @@ static void calgary_unmap_single(struct device *dev, dma_addr_t dma_handle,
struct iommu_table *tbl = find_iommu_table(dev);
unsigned int npages;

- npages = num_dma_pages(dma_handle, size);
+ npages = iommu_num_pages(dma_handle, size);
iommu_free(tbl, dma_handle, npages);
}

--
1.5.3.7


2008-07-28 17:10:05

by Muli Ben-Yehuda

[permalink] [raw]
Subject: Re: [PATCH] x86 calgary: replace num_dma_pages() with iommu_num_pages()

On Mon, Jul 28, 2008 at 02:28:20PM +0200, Joerg Roedel wrote:
> This patch removes the num_dma_pages() function from Calgary IOMMU code and
> replaces it with the generic iommu_num_pages() function.
>
> Cc: Muli Ben-Yehuda <[email protected]>
> Signed-off-by: Joerg Roedel <[email protected]>

Thanks Joerg,

Acked-by: Muli Ben-Yehuda <[email protected]>

Cheers,
Muli

2008-07-31 10:01:43

by Ingo Molnar

[permalink] [raw]
Subject: Re: [PATCH] x86 calgary: replace num_dma_pages() with iommu_num_pages()

* Muli Ben-Yehuda <[email protected]> wrote:

> On Mon, Jul 28, 2008 at 02:28:20PM +0200, Joerg Roedel wrote:
> > This patch removes the num_dma_pages() function from Calgary IOMMU code and
> > replaces it with the generic iommu_num_pages() function.
> >
> > Cc: Muli Ben-Yehuda <[email protected]>
> > Signed-off-by: Joerg Roedel <[email protected]>
>
> Thanks Joerg,
>
> Acked-by: Muli Ben-Yehuda <[email protected]>

applied to tip/x86/iommu - thanks.

Ingo

2008-07-31 10:12:38

by Joerg Roedel

[permalink] [raw]
Subject: Re: [PATCH] x86 calgary: replace num_dma_pages() with iommu_num_pages()

On Thu, Jul 31, 2008 at 12:01:03PM +0200, Ingo Molnar wrote:
> * Muli Ben-Yehuda <[email protected]> wrote:
>
> > On Mon, Jul 28, 2008 at 02:28:20PM +0200, Joerg Roedel wrote:
> > > This patch removes the num_dma_pages() function from Calgary IOMMU code and
> > > replaces it with the generic iommu_num_pages() function.
> > >
> > > Cc: Muli Ben-Yehuda <[email protected]>
> > > Signed-off-by: Joerg Roedel <[email protected]>
> >
> > Thanks Joerg,
> >
> > Acked-by: Muli Ben-Yehuda <[email protected]>
>
> applied to tip/x86/iommu - thanks.

Ingo,

can you drop this patch please? It was already picked up by Andrew and
he has sent it to you. I already sent a drop message as a reply to the
patch Andrew has sent to you. I am currently working on a patch series
to make the iommu_num_pages function generic and this series will
include a new version of this patch.

Joerg

--
| AMD Saxony Limited Liability Company & Co. KG
Operating | Wilschdorfer Landstr. 101, 01109 Dresden, Germany
System | Register Court Dresden: HRA 4896
Research | General Partner authorized to represent:
Center | AMD Saxony LLC (Wilmington, Delaware, US)
| General Manager of AMD Saxony LLC: Dr. Hans-R. Deppe, Thomas McCoy

2008-07-31 11:23:21

by Ingo Molnar

[permalink] [raw]
Subject: Re: [PATCH] x86 calgary: replace num_dma_pages() with iommu_num_pages()


* Joerg Roedel <[email protected]> wrote:

> On Thu, Jul 31, 2008 at 12:01:03PM +0200, Ingo Molnar wrote:
> > * Muli Ben-Yehuda <[email protected]> wrote:
> >
> > > On Mon, Jul 28, 2008 at 02:28:20PM +0200, Joerg Roedel wrote:
> > > > This patch removes the num_dma_pages() function from Calgary IOMMU code and
> > > > replaces it with the generic iommu_num_pages() function.
> > > >
> > > > Cc: Muli Ben-Yehuda <[email protected]>
> > > > Signed-off-by: Joerg Roedel <[email protected]>
> > >
> > > Thanks Joerg,
> > >
> > > Acked-by: Muli Ben-Yehuda <[email protected]>
> >
> > applied to tip/x86/iommu - thanks.
>
> Ingo,
>
> can you drop this patch please? It was already picked up by Andrew and
> he has sent it to you. I already sent a drop message as a reply to the
> patch Andrew has sent to you. I am currently working on a patch series
> to make the iommu_num_pages function generic and this series will
> include a new version of this patch.

ok, dropped - i was working the threads in chronological order so i
havent processed the other thread yet. I'd eventually have gotten to
your 'drop this mail please' email though :-)

Ingo