1
0
Fork 0

ALSA: seq: Drop snd_seq_autoload_lock() and _unlock()

The autoload lock became already superfluous due to the recent rework
of autoload code.  Let's drop them now.  This allows us to simplify a
few codes nicely.

Signed-off-by: Takashi Iwai <tiwai@suse.de>
wifi-calibration
Takashi Iwai 2015-02-12 14:20:24 +01:00
parent 056622053b
commit 54a721abd7
5 changed files with 10 additions and 41 deletions

View File

@ -99,13 +99,9 @@ int snd_seq_event_port_attach(int client, struct snd_seq_port_callback *pcbp,
int snd_seq_event_port_detach(int client, int port);
#ifdef CONFIG_MODULES
void snd_seq_autoload_lock(void);
void snd_seq_autoload_unlock(void);
void snd_seq_autoload_init(void);
#define snd_seq_autoload_exit() snd_seq_autoload_lock()
void snd_seq_autoload_exit(void);
#else
#define snd_seq_autoload_lock()
#define snd_seq_autoload_unlock()
#define snd_seq_autoload_init()
#define snd_seq_autoload_exit()
#endif

View File

@ -79,7 +79,6 @@ static int __init alsa_seq_oss_init(void)
{
int rc;
snd_seq_autoload_lock();
if ((rc = register_device()) < 0)
goto error;
if ((rc = register_proc()) < 0) {
@ -104,7 +103,6 @@ static int __init alsa_seq_oss_init(void)
snd_seq_oss_synth_init();
error:
snd_seq_autoload_unlock();
return rc;
}

View File

@ -98,19 +98,8 @@ static void snd_seq_device_info(struct snd_info_entry *entry,
*/
#ifdef CONFIG_MODULES
/* avoid auto-loading during module_init() */
/* flag to block auto-loading */
static atomic_t snd_seq_in_init = ATOMIC_INIT(1); /* blocked as default */
void snd_seq_autoload_lock(void)
{
atomic_inc(&snd_seq_in_init);
}
EXPORT_SYMBOL(snd_seq_autoload_lock);
void snd_seq_autoload_unlock(void)
{
atomic_dec(&snd_seq_in_init);
}
EXPORT_SYMBOL(snd_seq_autoload_unlock);
static int request_seq_drv(struct device *dev, void *data)
{
@ -147,6 +136,12 @@ void snd_seq_autoload_init(void)
}
EXPORT_SYMBOL(snd_seq_autoload_init);
void snd_seq_autoload_exit(void)
{
atomic_inc(&snd_seq_in_init);
}
EXPORT_SYMBOL(snd_seq_autoload_exit);
void snd_seq_device_load_drivers(void)
{
queue_autoload_drivers();

View File

@ -214,11 +214,7 @@ delete_client(void)
static int __init alsa_seq_dummy_init(void)
{
int err;
snd_seq_autoload_lock();
err = register_client();
snd_seq_autoload_unlock();
return err;
return register_client();
}
static void __exit alsa_seq_dummy_exit(void)

View File

@ -469,20 +469,4 @@ static struct snd_seq_driver seq_midisynth_driver = {
.argsize = 0,
};
static int __init alsa_seq_midi_init(void)
{
int err;
snd_seq_autoload_lock();
err = snd_seq_driver_register(&seq_midisynth_driver);
snd_seq_autoload_unlock();
return err;
}
static void __exit alsa_seq_midi_exit(void)
{
snd_seq_driver_unregister(&seq_midisynth_driver);
}
module_init(alsa_seq_midi_init)
module_exit(alsa_seq_midi_exit)
module_snd_seq_driver(seq_midisynth_driver);