From: Paul Davis <paul@linuxaudiosystems.com>
To: Linus Torvalds <torvalds@osdl.org>
Cc: Jaroslav Kysela <perex@suse.cz>, alsa-devel@lists.sourceforge.net
Subject: Re: The ALSA Situation
Date: Wed, 10 Nov 2004 16:13:21 -0500 [thread overview]
Message-ID: <200411102113.iAALDLUN001061@localhost.localdomain> (raw)
In-Reply-To: Your message of "Wed, 10 Nov 2004 11:09:07 PST." <Pine.LNX.4.58.0411101051240.2301@ppc970.osdl.org>
>That said, I don't see why a regular open() that doesn't wait shouldn't
>act that way. I would suggest that "close()" wait for the buffer to drain,
>unless interrupted by a signal. Again, this is how all other streaming
>devices tend ot work - this is _not_ a new requirement.
>
>So if you have
>
> #!/bin/sh
> prog1
> prog2
> prog3
>
>and they all open the sound device, they _will_ be serialized by their
>closes. This is exactly why the VFS layer calls "->flush()" on each close,
i think you missed my point about program exit not being synonymous
with close(2). if prog1 closes the device but then does something else
for a while, prog2 doesn't run till prog1 exits (in the above shell
script).
with the block-on-busy-open behaviour, prog2 runs but blocks on open
and then continues as soon as prog1 does the close(). with
EBUSY-on-busy and a script, prog2 doesn't run till prog1 exits.
btw, xmms is a sort-of relevant example of this. xmms opens and closes
the audio device several times during a typical use pattern, and
doesn't exit unless actually told explicitly to do so. so:
xmms beep1
otherprog beep2
would not actually do the right thing. one could fault xmms for this
behaviour, i suppose.
>Imagine a user that clicks on an icon to launch an application. What does
>he/she/it do when the app doesn't start? Clicks again. And again. Until
>bored. And then, five hours later, when xmms exits, you have a hundred
>applications suddenly all starting up at the same time. THAT is
>"non-obvious breakage".
100% agreed.
--p
-------------------------------------------------------
This SF.Net email is sponsored by:
Sybase ASE Linux Express Edition - download now for FREE
LinuxWorld Reader's Choice Award Winner for best database on Linux.
http://ads.osdn.com/?ad_id=5588&alloc_id=12065&op=click
next prev parent reply other threads:[~2004-11-10 21:13 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-10 0:24 The ALSA Situation Eugenia Loli-Queru
2004-11-10 1:50 ` Paul Davis
2004-11-10 2:38 ` Eugenia Loli-Queru
2004-11-10 2:55 ` Paul Davis
2004-11-10 5:59 ` Lee Revell
2004-11-10 23:22 ` James Courtier-Dutton
2004-11-10 10:57 ` Jaroslav Kysela
2004-11-10 16:09 ` Lee Revell
2004-11-10 16:43 ` Linus Torvalds
2004-11-10 17:30 ` Takashi Iwai
2004-11-10 18:08 ` Linus Torvalds
2004-11-10 17:45 ` Jaroslav Kysela
2004-11-10 18:15 ` Linus Torvalds
2004-11-10 18:41 ` Paul Davis
2004-11-10 19:09 ` Linus Torvalds
2004-11-10 21:13 ` Paul Davis [this message]
2004-11-10 22:34 ` Linus Torvalds
2004-11-10 23:53 ` Fernando Pablo Lopez-Lezcano
2004-11-11 6:32 ` Jaroslav Kysela
2004-11-11 6:42 ` Linus Torvalds
2004-11-11 16:34 ` Takashi Iwai
2004-11-11 16:58 ` Linus Torvalds
2004-11-11 17:25 ` Takashi Iwai
2004-11-11 18:23 ` Linus Torvalds
2004-11-11 22:34 ` Manuel Jander
2004-11-12 8:57 ` Takashi Iwai
2004-11-12 8:51 ` Takashi Iwai
2004-11-12 15:50 ` Linus Torvalds
2004-11-12 22:06 ` Florian Schmidt
2004-11-13 1:15 ` Manuel Jander
2004-11-13 10:38 ` Jaroslav Kysela
2004-11-14 4:00 ` Manuel Jander
2004-11-20 2:16 ` Configuration system and Resource Manager. Was: " Manuel Jander
2004-11-13 10:42 ` Jaroslav Kysela
2004-11-13 12:11 ` Florian Schmidt
2004-11-13 18:01 ` Linus Torvalds
2004-12-02 1:48 ` Florian Schmidt
2004-11-12 9:07 ` Giuliano Pochini
2004-11-11 22:52 ` Manuel Jander
2004-11-12 13:44 ` Takashi Iwai
2004-11-10 22:00 ` Hannu Savolainen
2004-11-10 17:13 ` Giuliano Pochini
[not found] <20041110235502.6C8211D2B2D@sc8-sf-uberspam1.sourceforge.net>
2004-11-11 8:56 ` Andreas Mohr
2004-11-11 15:50 ` Manuel Jander
[not found] <20041112040611.8390B1D2669@sc8-sf-uberspam1.sourceforge.net>
2004-11-12 8:24 ` Andreas Mohr
2004-11-12 13:33 ` Manuel Jander
2004-11-12 15:06 ` Clemens Ladisch
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=200411102113.iAALDLUN001061@localhost.localdomain \
--to=paul@linuxaudiosystems.com \
--cc=alsa-devel@lists.sourceforge.net \
--cc=perex@suse.cz \
--cc=torvalds@osdl.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.