Re: Sound problems, Scsi CDDA ripping. 2.2+

Nathan Hand (nathanh@wookie.chirp.com.au)
Mon, 22 Feb 1999 15:24:39 +1100 (EST)


On Sat, 20 Feb 1999, Tuomas Heino wrote:

> On Fri, 19 Feb 1999, Alan Cox wrote:
>
> > > I'm having a problem on three computers, where the computer refuses to
> > > play sound. I suspect that the sound driver allocates the DMA every time
> > > the audio device is opened inseted of when the driver is loaded, this is
> > > not acceptiable with the current state of Linuxes VM.
> >
> > Its configurable (dmabuf=1)
> >
> Still this isn't too good when you're using modularized sound drivers and
> want to load them say... after a week of uptime ;)
> ... or you're developing driver which uses DMA and you hate rebooting
> every time you make changes to it as the kernel won't give you DMA:ble memory
> [... or use kmod for sound drivers]
> I think we need some way to reserve DMA:ble memory in some early stage of
> booting up the 'puter... or then the memory allocation crap should be
> redone once again from scratch ;)

This sounds like a kludge to fix an IBM-PC brain damage. Rather
than reserve "special" memory, why not provide a way to reclaim
a given page of (physical) memory. A module can then force some
other process to vacate memory below 16MB, and claim it for its
own purposes. Some sort of flag would be required to indicate a
valid need for certain (physical) pages, so that a module can't
force out say another module also using DMA-able memory.

Would the easiest way to do this be to force the physical pages
into swap, then mark them your own? It wouldn't be fast, but it
doesn't need to be and I think this change would require fewest
modifications to the existing code. How could this be done on a
machine with no swap?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/