> From: Felipe Contreras [mailto:felipe.contreras@gmail.com]
> Sent: Tuesday, August 24, 2010 4:18 PM
> To: Guzman Lugo, Fernando
> Cc: Kanigeri, Hari; linux-omap@vger.kernel.org;
> linux-kernel@vger.kernel.org; ohad@wizery.com;
> hiroshi.doyu@nokia.com; ameya.palande@nokia.com;
>
felipe.contreras@nokia.com
> Subject: Re: [PATCH 8/9] dspbridge: add map support for big buffers
>
> On Tue, Aug 24, 2010 at 10:30 PM, Guzman Lugo, Fernando
> <fernando.lugo@ti.com> wrote:
> >> Oh, I actually meant the DMM pool.
> >>
> >> a) 1. Migrate to iommu, 2. Remove DMM completely
> >> b) 1. Remove DMM pool, 2. Migrate to iommu 3. Remove DMM completely
> >
> > Ok, what is the issue with DMM pool?
>
> From what I've heard; fragmentation.
>
> > The issue I see removing DMM pool in this moment and making all the
> > DMM Available (from 0x11000000 to 0xFFFFFFFF omap3 case) that is:
> >
> > The DMM module allocates a list of "struct map_page"
> elements base on
> > DMM_POOL_SIZE to keep track of memory reserved and mapped.
> >
> > Memory allocated = DMM_POOL_SIZE / PAGE_SIZE * sizeof(struct
> > map_page);
> >
> > So making all memory avalible it will increase the memory
> used for DMM
> > Module and it could be quite significant.
> >
> > Iovmm.c module, the list is increased dynamically when it
> is needed so
> > It does no have that problem. Then when the migration is done and
> > Iovmm.c module is used the DMM_POOL_SIZE can be removed
> without issues.
>
> It seems that this "memory allocated" you are taking about is
> an array, but what we would like is a list, like apparently
> iovmm is using. I think I can give that a try if needed.