[ALSA] Fix disconnection of proc interface
- Add the linked list to each proc entry to enable a single-shot disconnection (unregister) - Deprecate snd_info_unregister(), use snd_info_free_entry() - Removed NULL checks of snd_info_free_entry() Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
This commit is contained in:
committed by
Jaroslav Kysela
parent
42750b04c5
commit
746d4a02e6
@@ -303,8 +303,7 @@ register_proc(void)
|
||||
static void
|
||||
unregister_proc(void)
|
||||
{
|
||||
if (info_entry)
|
||||
snd_info_unregister(info_entry);
|
||||
snd_info_free_entry(info_entry);
|
||||
info_entry = NULL;
|
||||
}
|
||||
#endif /* CONFIG_PROC_FS */
|
||||
|
||||
@@ -573,7 +573,7 @@ static void __exit alsa_seq_device_exit(void)
|
||||
{
|
||||
remove_drivers();
|
||||
#ifdef CONFIG_PROC_FS
|
||||
snd_info_unregister(info_entry);
|
||||
snd_info_free_entry(info_entry);
|
||||
#endif
|
||||
if (num_ops)
|
||||
snd_printk(KERN_ERR "drivers not released (%d)\n", num_ops);
|
||||
|
||||
@@ -64,9 +64,9 @@ int __init snd_seq_info_init(void)
|
||||
|
||||
int __exit snd_seq_info_done(void)
|
||||
{
|
||||
snd_info_unregister(queues_entry);
|
||||
snd_info_unregister(clients_entry);
|
||||
snd_info_unregister(timer_entry);
|
||||
snd_info_free_entry(queues_entry);
|
||||
snd_info_free_entry(clients_entry);
|
||||
snd_info_free_entry(timer_entry);
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user