From: Lennart Poettering <mznyfn@0pointer.de>
To: pl bossart <bossart.nospam@gmail.com>
Cc: General PulseAudio Discussion
<pulseaudio-discuss@mail.0pointer.de>,
alsa-devel@alsa-project.org
Subject: Re: [alsa-devel] [RFC] disabling ALSA period interrupts
Date: Sat, 8 May 2010 01:25:16 +0200 [thread overview]
Message-ID: <20100507232516.GB16910@tango.0pointer.de> (raw)
In-Reply-To: <h2l6160a5131004291538w6c7891fbn2db3425846aefd60@mail.gmail.com>
On Thu, 29.04.10 17:38, pl bossart (bossart.nospam@gmail.com) wrote:
> Howdy,
> When PulseAudio is used and all PCM is routed through PulseAudio
> (Fedora, Meego, etc), the notion of ALSA periods isn't very useful.
> PulseAudio uses a timer to refill buffers and the period interrupts
> are not used at all.
This patch looks very interesting and desirable. This is something have
long been waiting for.
I wonder how this actually relates to
snd_pcm_sw_params_set_period_event() though.
> So why not disable them entirely to reduce the number of wakeups? This
> is possible with a number of existing DMA controllers. The simple
> patch attached shows a proof-of-concept on HDAudio, it's been working
> for 5 hours on my Fedora12 laptop without any glitches and powertop
> does show _zero_ wakeups from the HDAudio controller (except on
> startup). I am told by my colleagues working in Windows environments
> that this is what's done on Vista/Windows7 btw. This isn't to say
> Windows is great but that artificial generation of not-needed
> interrupts is avoidable.
>
> There are probably some cases where you don't want this type of
> behavior (broken hardware, legacy code with multiple-buffering,
> disabled timer in PulseAudio), so I think it would make sense to
> request the disabling of interrupts when hw_params are set, since this
> is also the time when period sizes are set. I am aware that some
> changes would be needed in pcm_lib.c, where all the error checks are
> done. Takashi, Jaroslav, Lennart, what do you think?
I am sold!
Lennart
--
Lennart Poettering Red Hat, Inc.
lennart [at] poettering [dot] net
http://0pointer.net/lennart/ GnuPG 0x1A015CC4
next prev parent reply other threads:[~2010-05-07 23:25 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-04-29 22:38 [RFC] disabling ALSA period interrupts pl bossart
2010-04-29 23:18 ` Raymond Yau
[not found] ` <k2j6160a5131004291644rd8645dc7oecee28ee290b683f@mail.gmail.com>
2010-04-30 0:59 ` Raymond Yau
2010-04-30 1:09 ` Raymond Yau
2010-04-30 13:46 ` pl bossart
2010-04-30 22:51 ` Raymond Yau
2010-04-30 3:47 ` Raymond Yau
2010-04-30 11:24 ` Clemens Ladisch
2010-04-30 13:44 ` pl bossart
2010-05-06 1:24 ` Raymond Yau
2010-05-14 8:12 ` Takashi Iwai
2010-05-14 13:36 ` pl bossart
2010-05-14 21:03 ` pl bossart
2010-05-17 9:12 ` Clemens Ladisch
2010-05-17 9:14 ` [PATCH 1/3] add API to allow disabling " Clemens Ladisch
2010-05-17 9:23 ` Jassi Brar
2010-05-17 11:16 ` Clemens Ladisch
2010-05-17 11:27 ` Jassi Brar
2010-05-17 14:42 ` Jaroslav Kysela
2010-05-17 16:05 ` pl bossart
2010-05-17 16:22 ` Jaroslav Kysela
2010-05-17 16:37 ` pl bossart
2010-05-17 16:54 ` Jaroslav Kysela
2010-05-18 9:11 ` Jassi Brar
2010-05-17 13:59 ` pl bossart
2010-05-17 9:14 ` [PATCH 2/3] ALSA: hda-intel: add support for disabling period irq Clemens Ladisch
2010-05-17 14:05 ` pl bossart
2010-05-17 9:15 ` [PATCH 3/3] ALSA: oxygen: " Clemens Ladisch
2010-05-17 14:17 ` [RFC] disabling ALSA period interrupts pl bossart
2010-05-20 14:50 ` Clemens Ladisch
2010-04-30 16:44 ` Liam Girdwood
2010-04-30 17:39 ` pl bossart
2010-05-04 3:18 ` Raymond Yau
2010-05-07 23:25 ` Lennart Poettering [this message]
2010-05-08 3:12 ` pl bossart
2010-05-12 4:00 ` pl bossart
2010-05-12 13:00 ` Jaroslav Kysela
2010-05-12 17:10 ` [alsa-devel] " pl bossart
2010-05-12 18:15 ` Jaroslav Kysela
2010-05-13 3:56 ` pl bossart
2010-05-12 7:22 ` James Courtier-Dutton
2010-05-12 12:42 ` pl bossart
2010-05-13 0:37 ` Raymond Yau
2010-05-14 0:43 ` Raymond Yau
2010-05-14 1:51 ` pl bossart
2010-05-14 2:45 ` Raymond Yau
2010-05-14 3:09 ` Raymond Yau
2010-05-14 4:03 ` Raymond Yau
2010-05-12 13:08 ` Jassi Brar
2010-05-12 13:50 ` [alsa-devel] " pl bossart
2010-05-12 14:15 ` Jassi Brar
2010-05-12 14:16 ` Mark Brown
2010-05-13 0:04 ` Raymond Yau
2010-05-14 4:07 ` Jassi Brar
2010-05-14 4:39 ` pl bossart
2010-05-14 5:27 ` Jassi Brar
2010-05-12 14:41 ` Raymond Yau
2010-05-13 7:27 ` Raymond Yau
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=20100507232516.GB16910@tango.0pointer.de \
--to=mznyfn@0pointer.de \
--cc=alsa-devel@alsa-project.org \
--cc=bossart.nospam@gmail.com \
--cc=pulseaudio-discuss@mail.0pointer.de \
/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.