Re: more iommu sg merging fallout

From: FUJITA Tomonori
Date: Wed Feb 06 2008 - 20:38:29 EST


On Wed, 06 Feb 2008 16:01:47 -0800 (PST)
David Miller <davem@xxxxxxxxxxxxx> wrote:

> From: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx>
> Date: Thu, 07 Feb 2008 08:53:33 +0900
>
> > On Wed, 06 Feb 2008 15:18:55 -0800 (PST)
> > David Miller <davem@xxxxxxxxxxxxx> wrote:
> >
> > > I intend to put merging back in, perhaps something similar to
> > > powerpc's merging logic but without the expensive (in my opinion)
> > > IOMMU allocation every loop. I think it is better to determine the
> > > segment breaks in one pass, allocate that many IOMMU entries in one
> > > allocation, then fill them all in.
> >
> > I thought about asking you if I can modify the SPARC IOMMUs to do
> > allocation in every loop.
> >
> > The reason why I need the allocation in every loop is that I also need
> > to fix the problem that IOMMUs allocate memory areas without
> > considering a low level driver's segment boundary limits.
> >
> > http://linux.derkeiler.com/Mailing-Lists/Kernel/2007-11/msg07616.html
> > http://linux.derkeiler.com/Mailing-Lists/Kernel/2007-12/msg02286.html
> >
> > As far as I know, all the IOMMUs except for SPARC allocate a free area
> > in every loop but if it's too expensive for SPARC, then we need to
> > find a different way to handle segment boundary limits.
>
> Ok then what I'll do is adopt some version of powerpc's merging
> allocator into the sparc64 code.

Great, thanks! SPARC IOMMUs use bitmap for the free area management
like POWER IOMMUs so it could use lib/iommu-helper as POWER does.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/