ALSA: info: Register proc entries recursively, too
authorTakashi Iwai <tiwai@suse.de>
Mon, 18 May 2015 07:20:24 +0000 (09:20 +0200)
committerTakashi Iwai <tiwai@suse.de>
Mon, 18 May 2015 07:20:24 +0000 (09:20 +0200)
commit2471b6c80a70e80de69f5ff4c37187c3912e5874
tree1ff4e00c3f81ef260561bedabdc820634a70464f
parent90a409aad45dedc41129e0ec257b41de901b8897
ALSA: info: Register proc entries recursively, too

The commit [c560a6797e3b: ALSA: core: Remove child proc file elements
recursively] converted snd_card_proc_new() with the normal
snd_info_*() call and removed snd_device chain for such info
entries. However, it misses one point: the creation of the proc entry
was managed by snd_device chain in the former code, and now it's also
gone, which results in no proc files creation at all.  Mea culpa.

This patch makes snd_info_card_register() creating the all pending
child proc entries in a shot.  Also, since snd_card_register() might
be called multiple times, this function is also changed to be callable
multiple times.

Along with the changes above, now the linked list of snd_info_entry is
added at creation time instead of snd_info_register() for keeping eyes
of pending info entries.

Fixes: c560a6797e3b ('ALSA: core: Remove child proc file elements recursively')
Reported-by: "Lu, Han" <han.lu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/core/info.c
sound/core/init.c