All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Revell <rlrevell@joe-job.com>
To: Bill Huey <bhuey@lnxw.com>
Cc: "The Linux Audio Developers' Mailing List" 
	<linux-audio-dev@music.columbia.edu>,
	linux-kernel@vger.kernel.org, albert@users.sourceforge.net
Subject: Re: [linux-audio-dev] Re: desktop and multimedia as an afterthought?
Date: Tue, 13 Jul 2004 16:00:50 -0400	[thread overview]
Message-ID: <1089748849.22026.12.camel@mindpipe> (raw)
In-Reply-To: <20040713191224.GA22237@nietzsche.lynx.com>

On Tue, 2004-07-13 at 15:12, Bill Huey wrote:
> On Tue, Jul 13, 2004 at 01:09:28PM +0100, Martijn Sipkema wrote:
> > [...]
> > > Please double-check that there are no priority inversion problems and that
> > > the application is correctly setting the scheduling policy and that it is
> > > mlocking everything appropriately.
> > 
> > I don't think it is currently possible to have cooperating threads with
> > different priorities without priority inversion when using a mutex to
> > serialize access to shared data; and using a mutex is in fact the only portable
> > way to do that...
> > 
> > Thus, the fact that Linux does not support protocols to prevent priority
> > inversion (please correct me if I am wrong) kind of suggests that supporting
> > realtime applications is not considered very important.
> 
> Any use of an explicit or implied blocking mutex across threads with differing
> priorities can results in priority inversion problems. The real problem, however,
> is contention. If you get rid of the contention in a certain critical section,
> you then also get rid of latency in the system. They are one and the same problem.
> 
> > It is often heard in the Linux audio community that mutexes are not realtime
> > safe and a lock-free ringbuffer should be used instead. Using such a lock-free
> > ringbuffer requires non-standard atomic integer operations and does not
> > guarantee memory synchronization (and should probably not perform
> > significantly better than a decent mutex implementation) and is thus not
> > portable.
> 
> It's to decouple the system from various time related problems with jitter.
> It's critical to use this since the nature of Linus is so temporally coarse
> that these techniques must be used to "smooth" over latency problems in the
> Linux kernel.
> 
> I personally would love to see these audio applications run on a first-class
> basis under Linux. Unfortunately, that won't happen until it gets near real
> time support prevasively through the kernel just like in SGI's IRIX. Multimedia
> applications really need to be under a hard real time system with special
> scheduler support so that CPU resources, IO channels can be throttled.
> 

I don't think invoking IRIX is going to get us a lot of sympathy on
LKML.  It is widely reviled.  BEOS is probably a better example.

Just my $0.02.

Lee


  reply	other threads:[~2004-07-13 20:00 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-07-12 20:45 desktop and multimedia as an afterthought? Albert Cahalan
2004-07-12 23:54 ` Paul Davis
2004-07-13  0:18   ` Con Kolivas
2004-07-13  1:11     ` Paul Davis
2004-07-13  3:25     ` Florin Andrei
2004-07-13  0:24   ` Andrew Morton
2004-07-13  1:49     ` Thomas Charbonnel
2004-07-13 10:22       ` Andrew Morton
2004-07-13 11:01         ` Thomas Charbonnel
2004-07-13  3:22     ` Florin Andrei
2004-07-13  8:30     ` Takashi Iwai
2004-07-13 11:09     ` Kasper Sandberg
2004-07-13 12:09     ` [linux-audio-dev] " Martijn Sipkema
2004-07-13 14:55       ` Paul Davis
2004-07-13 22:37         ` Martijn Sipkema
2004-07-13 22:31           ` Fons Adriaensen
2004-07-13 19:12       ` Bill Huey
2004-07-13 20:00         ` Lee Revell [this message]
2004-07-13 22:44         ` Martijn Sipkema
2004-07-13 22:08           ` Bill Huey
2004-07-13 23:37             ` Martijn Sipkema

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1089748849.22026.12.camel@mindpipe \
    --to=rlrevell@joe-job.com \
    --cc=albert@users.sourceforge.net \
    --cc=bhuey@lnxw.com \
    --cc=linux-audio-dev@music.columbia.edu \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.