All of lore.kernel.org
 help / color / mirror / Atom feed
* dmesg complains with CONFIG_SND_VERBOSE_PROCFS
@ 2017-02-27 13:49 Linus Walleij
  2017-02-27 14:54 ` Takashi Iwai
  0 siblings, 1 reply; 3+ messages in thread
From: Linus Walleij @ 2017-02-27 13:49 UTC (permalink / raw)
  To: alsa-devel

If CONFIG_SND_VERBOSE_PROCFS is enabled I got a bunch of
nasty messages from duplicate entries when registering the DAIs
like this:

[    3.144805] entry->name == "info"
[    3.148132] entry->name == "info"
[    3.151519] entry->name == "hw_params"
[    3.155273] entry->name == "sw_params"
[    3.159027] entry->name == "status"
[    3.164001] entry->name == "prealloc"
[    3.167663] entry->name == "prealloc_max"
[    3.173034] entry->name == "prealloc"
[    3.176696] ------------[ cut here ]------------
[    3.181335] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
proc_register+0xf0/0x110
[    3.189422] proc_dir_entry 'sub0/prealloc' already registered
(...)
[    3.414642] entry->name == "prealloc_max"
[    3.418670] ------------[ cut here ]------------
[    3.423309] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
proc_register+0xf0/0x110
[    3.431396] proc_dir_entry 'sub0/prealloc_max' already registered
(...)
[    3.658020] snd-soc-mop500 soc:sound: ab8500-codec-dai.0 <->
80124000.msp mapping ok
[    3.665893] entry->name == "info"
[    3.669219] entry->name == "info"
[    3.672546] entry->name == "hw_params"
[    3.676300] entry->name == "sw_params"
[    3.680053] entry->name == "status"
[    3.684906] entry->name == "prealloc"
[    3.688568] entry->name == "prealloc_max"
[    3.693939] entry->name == "prealloc"
[    3.697601] ------------[ cut here ]------------
[    3.702239] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
proc_register+0xf0/0x110
[    3.710296] proc_dir_entry 'sub0/prealloc' already registered
(...)
[    3.936645] entry->name == "prealloc_max"
[    3.940673] ------------[ cut here ]------------
[    3.945281] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
proc_register+0xf0/0x110
[    3.953369] proc_dir_entry 'sub0/prealloc_max' already registered
[    4.180023] snd-soc-mop500 soc:sound: ab8500-codec-dai.1 <->
80125000.msp mapping ok

What I can't seem to figure out is whether the DAI in my card
(sound/soc/ux500/mop500.c) is misconfigured some way, or
if CONFIG_SND_VERBOSE_PROCFS is not handling this
the right way?

If I take out the config option everything seems to work smoothly
but I guess it should be possible to have this on?

Any hints?

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: dmesg complains with CONFIG_SND_VERBOSE_PROCFS
  2017-02-27 13:49 dmesg complains with CONFIG_SND_VERBOSE_PROCFS Linus Walleij
@ 2017-02-27 14:54 ` Takashi Iwai
  2017-02-27 19:12   ` Linus Walleij
  0 siblings, 1 reply; 3+ messages in thread
From: Takashi Iwai @ 2017-02-27 14:54 UTC (permalink / raw)
  To: Linus Walleij; +Cc: alsa-devel

On Mon, 27 Feb 2017 14:49:00 +0100,
Linus Walleij wrote:
> 
> If CONFIG_SND_VERBOSE_PROCFS is enabled I got a bunch of
> nasty messages from duplicate entries when registering the DAIs
> like this:
> 
> [    3.144805] entry->name == "info"
> [    3.148132] entry->name == "info"
> [    3.151519] entry->name == "hw_params"
> [    3.155273] entry->name == "sw_params"
> [    3.159027] entry->name == "status"
> [    3.164001] entry->name == "prealloc"
> [    3.167663] entry->name == "prealloc_max"
> [    3.173034] entry->name == "prealloc"
> [    3.176696] ------------[ cut here ]------------
> [    3.181335] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
> proc_register+0xf0/0x110
> [    3.189422] proc_dir_entry 'sub0/prealloc' already registered
> (...)
> [    3.414642] entry->name == "prealloc_max"
> [    3.418670] ------------[ cut here ]------------
> [    3.423309] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
> proc_register+0xf0/0x110
> [    3.431396] proc_dir_entry 'sub0/prealloc_max' already registered
> (...)
> [    3.658020] snd-soc-mop500 soc:sound: ab8500-codec-dai.0 <->
> 80124000.msp mapping ok
> [    3.665893] entry->name == "info"
> [    3.669219] entry->name == "info"
> [    3.672546] entry->name == "hw_params"
> [    3.676300] entry->name == "sw_params"
> [    3.680053] entry->name == "status"
> [    3.684906] entry->name == "prealloc"
> [    3.688568] entry->name == "prealloc_max"
> [    3.693939] entry->name == "prealloc"
> [    3.697601] ------------[ cut here ]------------
> [    3.702239] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
> proc_register+0xf0/0x110
> [    3.710296] proc_dir_entry 'sub0/prealloc' already registered
> (...)
> [    3.936645] entry->name == "prealloc_max"
> [    3.940673] ------------[ cut here ]------------
> [    3.945281] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
> proc_register+0xf0/0x110
> [    3.953369] proc_dir_entry 'sub0/prealloc_max' already registered
> [    4.180023] snd-soc-mop500 soc:sound: ab8500-codec-dai.1 <->
> 80125000.msp mapping ok
> 
> What I can't seem to figure out is whether the DAI in my card
> (sound/soc/ux500/mop500.c) is misconfigured some way, or
> if CONFIG_SND_VERBOSE_PROCFS is not handling this
> the right way?
> 
> If I take out the config option everything seems to work smoothly
> but I guess it should be possible to have this on?

The warnings are about PCM substream procfs, and the conflicting ones
are created by snd_pcm_lib_preallocate_pages*() calls.

Is it a deferred probe?  I can imagine that some driver forgot to
clean up and left the preallocated stuff.  For example,
soc-generic-dmaengine-pcm.c calls snd_pcm_lib_preallocate_pages*() but
has no counterpart for freeing it.


Takashi

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: dmesg complains with CONFIG_SND_VERBOSE_PROCFS
  2017-02-27 14:54 ` Takashi Iwai
@ 2017-02-27 19:12   ` Linus Walleij
  0 siblings, 0 replies; 3+ messages in thread
From: Linus Walleij @ 2017-02-27 19:12 UTC (permalink / raw)
  To: Takashi Iwai; +Cc: alsa-devel

On Mon, Feb 27, 2017 at 3:54 PM, Takashi Iwai <tiwai@suse.de> wrote:
> On Mon, 27 Feb 2017 14:49:00 +0100,
> Linus Walleij wrote:
>>
>> If CONFIG_SND_VERBOSE_PROCFS is enabled I got a bunch of
>> nasty messages from duplicate entries when registering the DAIs
>> like this:
>>
>> [    3.144805] entry->name == "info"
>> [    3.148132] entry->name == "info"
>> [    3.151519] entry->name == "hw_params"
>> [    3.155273] entry->name == "sw_params"
>> [    3.159027] entry->name == "status"
>> [    3.164001] entry->name == "prealloc"
>> [    3.167663] entry->name == "prealloc_max"
>> [    3.173034] entry->name == "prealloc"
>> [    3.176696] ------------[ cut here ]------------
>> [    3.181335] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
>> proc_register+0xf0/0x110
>> [    3.189422] proc_dir_entry 'sub0/prealloc' already registered
>> (...)
>> [    3.414642] entry->name == "prealloc_max"
>> [    3.418670] ------------[ cut here ]------------
>> [    3.423309] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
>> proc_register+0xf0/0x110
>> [    3.431396] proc_dir_entry 'sub0/prealloc_max' already registered
>> (...)
>> [    3.658020] snd-soc-mop500 soc:sound: ab8500-codec-dai.0 <->
>> 80124000.msp mapping ok
>> [    3.665893] entry->name == "info"
>> [    3.669219] entry->name == "info"
>> [    3.672546] entry->name == "hw_params"
>> [    3.676300] entry->name == "sw_params"
>> [    3.680053] entry->name == "status"
>> [    3.684906] entry->name == "prealloc"
>> [    3.688568] entry->name == "prealloc_max"
>> [    3.693939] entry->name == "prealloc"
>> [    3.697601] ------------[ cut here ]------------
>> [    3.702239] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
>> proc_register+0xf0/0x110
>> [    3.710296] proc_dir_entry 'sub0/prealloc' already registered
>> (...)
>> [    3.936645] entry->name == "prealloc_max"
>> [    3.940673] ------------[ cut here ]------------
>> [    3.945281] WARNING: CPU: 0 PID: 95 at ../fs/proc/generic.c:346
>> proc_register+0xf0/0x110
>> [    3.953369] proc_dir_entry 'sub0/prealloc_max' already registered
>> [    4.180023] snd-soc-mop500 soc:sound: ab8500-codec-dai.1 <->
>> 80125000.msp mapping ok
>>
>> What I can't seem to figure out is whether the DAI in my card
>> (sound/soc/ux500/mop500.c) is misconfigured some way, or
>> if CONFIG_SND_VERBOSE_PROCFS is not handling this
>> the right way?
>>
>> If I take out the config option everything seems to work smoothly
>> but I guess it should be possible to have this on?
>
> The warnings are about PCM substream procfs, and the conflicting ones
> are created by snd_pcm_lib_preallocate_pages*() calls.
>
> Is it a deferred probe?  I can imagine that some driver forgot to
> clean up and left the preallocated stuff.  For example,
> soc-generic-dmaengine-pcm.c calls snd_pcm_lib_preallocate_pages*() but
> has no counterpart for freeing it.

Ah! I bet a million to one you are spot on on this bug, it seems
intuitively correct: this is indeed a deferred probe.

I will try to fix it properly by patching the generic dmaengine driver.

Yours,
Linus Walleij

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-02-27 19:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-27 13:49 dmesg complains with CONFIG_SND_VERBOSE_PROCFS Linus Walleij
2017-02-27 14:54 ` Takashi Iwai
2017-02-27 19:12   ` Linus Walleij

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.