* 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.