[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20100713094244.7eb84f1b@lxorguk.ukuu.org.uk>
Date: Tue, 13 Jul 2010 09:42:44 +0100
From: Alan Cox <alan@...rguk.ukuu.org.uk>
To: FUJITA Tomonori <fujita.tomonori@....ntt.co.jp>
Cc: zpfeffer@...eaurora.org, joro@...tes.org, dwalker@...eaurora.org,
andi@...stfloor.org, randy.dunlap@...cle.com, mel@....ul.ie,
linux-mm@...ck.org, linux-kernel@...r.kernel.org,
linux-arm-msm@...r.kernel.org, linux-omap@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [RFC 3/3] mm: iommu: The Virtual Contiguous Memory Manager
On Tue, 13 Jul 2010 17:30:43 +0900
FUJITA Tomonori <fujita.tomonori@....ntt.co.jp> wrote:
> On Tue, 13 Jul 2010 09:20:12 +0100
> Alan Cox <alan@...rguk.ukuu.org.uk> wrote:
>
> > > Why video4linux can't use the DMA API? Doing DMA with vmalloc'ed
> > > buffers is a thing that we should avoid (there are some exceptions
> > > like xfs though).
> >
> > Vmalloc is about the only API for creating virtually linear memory areas.
> > The video stuff really needs that to avoid lots of horrible special cases
> > when doing buffer processing and the like.
> >
> > Pretty much each driver using it has a pair of functions 'rvmalloc' and
> > 'rvfree' so given a proper "vmalloc_for_dma()" type interface can easily
> > be switched
>
> We already have helper functions for DMA with vmap pages,
> flush_kernel_vmap_range and invalidate_kernel_vmap_range.
I'm not sure they help at all because the DMA user for these pages isn't
the video driver - it's the USB layer, and the USB layer isn't
specifically aware it is being passed vmap pages.
Alan
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists