Re: [BUILD FAILURE 01/04] Next June 04:PPC64 randconfig [drivers/staging/comedi/drivers.o]
From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2009-06-09 18:55:04
Also in:
linux-next, lkml
On Tue, Jun 9, 2009 at 20:34, Subrata Modak[off-list ref] wro= te:
On Tue, 2009-06-09 at 13:50 +1000, Benjamin Herrenschmidt wrote:quoted
On Sun, 2009-06-07 at 20:06 +0530, Subrata Modak wrote:quoted
On Sat, 2009-06-06 at 09:36 -0400, Frank Mori Hess wrote:quoted
On Saturday 06 June 2009, Greg KH wrote:quoted
Frank and Ian, any thoughts about the vmap call in the comedi_buf_alloc() call? =C2=A0Why is it using PAGE_KERNEL_NOCACHE=
, and what
quoted
quoted
quoted
quoted
is the prealloc_buf buffer used for?It is a circular buffer used to hold data streaming either to or fro=
m a
quoted
quoted
quoted
board (for example when producing an analog output waveform). =C2=A0=
Reads and
quoted
quoted
quoted
writes to the device files read/write to the circular buffer, plus a=
few
quoted
quoted
quoted
drivers do dma directly to/from it. =C2=A0I personally don't have a =
problem
quoted
quoted
quoted
with requiring drivers to have their own dma buffers and making them=
copy
quoted
quoted
quoted
data between their private dma buffers and the main circular buffer.=
=C2=A0I
quoted
quoted
quoted
guess the original design wanted to support zero-copy dma.Great to hear that. How about a patch that solves my build problem on PPC64(the problem seems to be existing for long) ?In any case, doing PAGE_KERNEL_NOCACHE for DMA memory is incorrect on many architectures. So at this stage, there's no much option but ifdef I suspect for now until this is fixed properly.Ok. But, i am not sure whether Greg will agree to this. If, Ok, is the following patch i sent earlier Ok ? http://lkml.org/lkml/2009/6/5/462,
Your patch helps powerpc only. Compilation is still broken on most other architectures.
quoted
It does make sense to want to have some memory like that shared between user space and DMA, though I don't know what the right approach that works on all archs is at this stage. Worth asking the Alsa guys, I think they have similar issues :-) But doing double buffering might do the trick fine for now.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k=
.org
In personal conversations with technical people, I call myself a hacker. Bu=
t
when I'm talking to journalists I just say "programmer" or something like t=
hat.
-- Linus Torvalds