Some pulseaudio questions...

Jon Masters jonathan at jonmasters.org
Fri Jun 5 16:43:41 UTC 2009


On Fri, 2009-06-05 at 11:11 -0400, Jon Masters wrote:
> On Fri, 2009-06-05 at 12:57 +0200, Lennart Poettering wrote:
> > On Fri, 05.06.09 00:21, Jon Masters (jonathan at jonmasters.org) wrote:

> > Text book RT applications use mlock()/mlockall() to lock themselves
> > into memory and make sure they never are swapped out. This is
> > something we cannot really do for PA given that map a *lot* of stuff
> > into our address space: libraries, SHM segments for communications
> > with other clients, cached samples, and so on. If we'd lock all that
> > into memory there wouldn't be any memory left for much else
> 
> Yeah, I'm aware of this. But there perhaps should be some option anyway
> - after all, you already have all the support code for it, and already
> handle setting real time priorities too. In my brief time with a hacked
> up local build that does an mlockall right at the beginning of the
> mainloop, I am hearing few audio pops and skips on this box. It's
> obviously not a longer term solution, just a datapoint.

I'll join the PA devel list over the weekend, it's not strictly that
Fedora specific now. But one thing I'm wondering is whether you might
benefit from splitting PA into a small core-util bit that were lockable
and having all the rest outside in separate tasks - that's probably not
too feasible at this stage though.

I want to help fix whatever problems I'm getting on each of my machines
running PA, rather than sound like I'm trashing talking PA as a
technology. The sad reality is that Linux audio worked for me more
smoothly 14 years ago when I started with Linux (and manually had to set
jumpers, run isapnpdump, etc.) than it does now. It was smoother when I
had early ESD[0] than it is now, and smoother when I first built
experimental ALSA drivers than it is now. Things like PA are a great
concept in theory, but they're not of much benefit if (as in my case)
the only obvious way I can get an decent experience is to hack my system
and run stuff under pasuspender.

Jon.

[0] And I mean alongside 0.1 enlightment, back when I had the Free
Software Song as a ringtone and enjoyed hearing the startup pips as ESD
opened the sound device.





More information about the fedora-devel-list mailing list