From: Takashi Iwai <tiwai@suse.de>
To: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Cc: alsa-devel@alsa-project.org, James Cameron <quozl@laptop.org>,
David Henningsson <david.henningsson@canonical.com>
Subject: Re: Splitting out controls
Date: Fri, 16 Oct 2015 17:28:46 +0200 [thread overview]
Message-ID: <s5ha8rig7dd.wl-tiwai@suse.de> (raw)
In-Reply-To: <56210E75.70501@linux.intel.com>
On Fri, 16 Oct 2015 16:49:25 +0200,
Pierre-Louis Bossart wrote:
>
> > We actively enable and advocate that people with limited knowledge can
> > 'mess around mixer controls'. That's why we have an alsamixer
> > application in the first place, and teach people how to use it.
>
> What you are describing is the traditional approach where the number of
> controls is limited, a couple of switches here and a set of volume
> controls there.
> With new devices having mixers all over the place, be it in codecs or
> DSPs, it's not uncommon to have several hundred controls. There is no
> way users will be able to find out on their own what values they should
> use and it would be misleading to think developers are able to identify
> all lethal combinations of settings. We've also moved all these control
> settings from kernel to userspace to avoid hardcoding values that are
> platform specific.
Right, and this is the problem. The system integration information
isn't the thing a typical user would need to handle.
OK, we can leave them in user space. It's more flexible, yes. But
it's a bad design if a *normal* user is allowed and needs to handle
all these. A normal user needs (and is allowed) only limited presets;
your car won't allow you accessing hundreds of knobs, e.g. a child on
a rear seat suddenly triggers the turbo-jump button in combination
with a back-fire while driving on a highway :)
> Bottom line we have to move to profiles, stop guessing values based on
> control names or avoid letting users poke random values in alsamixer.
> This just doesn't scale any more. thinking that the alsamixer
> command-line remains the default user-facing interface moving forward is
> just not right, it's a developer tool.
Well, it doesn't matter whether it's alsamixer or whatever program.
The point is that *any* user program might screw up things easily,
even if it's not intentional.
For Android, it wasn't a big issue, so far, just because only few
people touch the audio setup manually. But now the former embedded
things get more migrated to the desktop scenes, and it's pretty normal
that a user just runs normal PA and ALSA apps with it nowadays like
PC. It'll get more and more in the next years.
So, yes, we have profiles to manage the setups in user-space. This is
very good, scalable, per se. The problem is, however, rather how to
harden this management.
I still think that the driver can give the first-level filter or
permission isolation. It should be doable also in topology f/w, in
theory.
Then, we can think of more hardening in user-space side on top of it.
For example, running sound (or UCM) daemon with a privileged user, and
let it alone managing the sensitive sound setup while a normal user is
allowed to adjust only limited presets given by the profile.
Just my $0.02, currently floating on my fuzzy head in bed.
Takashi
next prev parent reply other threads:[~2015-10-16 15:28 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-12 13:49 [Minutes] ELCE Audio mini conf Liam Girdwood
2015-10-12 15:30 ` Jaroslav Kysela
2015-10-12 20:59 ` Splitting out controls James Cameron
2015-10-13 7:07 ` David Henningsson
2015-10-13 8:27 ` Keyon
2015-10-13 14:55 ` Pierre-Louis Bossart
2015-10-13 15:56 ` David Henningsson
2015-10-13 16:08 ` Pierre-Louis Bossart
2015-10-16 6:41 ` David Henningsson
2015-10-16 14:49 ` Pierre-Louis Bossart
2015-10-16 15:24 ` Richard Fitzgerald
2015-10-30 2:48 ` Mark Brown
2015-10-16 15:28 ` Takashi Iwai [this message]
2015-10-14 18:20 ` Liam Girdwood
2015-10-16 15:35 ` Richard Fitzgerald
2015-10-16 16:00 ` Takashi Iwai
2015-10-16 16:31 ` Richard Fitzgerald
2015-10-16 17:00 ` Takashi Iwai
2015-10-17 15:54 ` Pierre-Louis Bossart
2015-10-17 16:02 ` Takashi Iwai
2015-10-18 6:41 ` Ricard Wanderlof
2015-10-30 2:57 ` Mark Brown
2015-10-17 16:25 ` Alexander E. Patrakov
2015-10-30 2:50 ` Mark Brown
2015-10-30 2:36 ` Mark Brown
2015-10-30 8:36 ` David Henningsson
2015-10-30 8:53 ` James Cameron
2015-10-30 9:04 ` David Henningsson
2015-11-01 2:45 ` Mark Brown
2015-10-13 14:09 ` 'BATCH flag for USB' and 'ALSA Core Challenges' Takashi Sakamoto
2015-10-13 14:44 ` Alexander E. Patrakov
2015-10-18 3:22 ` Takashi Sakamoto
2015-10-13 16:01 ` Pierre-Louis Bossart
2015-10-14 12:27 ` Liam Girdwood
2015-10-22 17:10 ` [Minutes] ELCE Audio mini conf Mark Brown
2015-10-22 17:14 ` DP hotplug on USB C Mark Brown
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=s5ha8rig7dd.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=alsa-devel@alsa-project.org \
--cc=david.henningsson@canonical.com \
--cc=pierre-louis.bossart@linux.intel.com \
--cc=quozl@laptop.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox