diff options
author | Takashi Iwai <tiwai@suse.de> | 2013-07-16 12:17:49 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2013-07-17 09:19:24 +0200 |
commit | 256ca9c3ad5013ff8a8f165e5a82fab437628c8e (patch) | |
tree | ef8d82a3c1bc25891c544e8afd3277923597b315 /sound/core/seq/oss/seq_oss_midi.c | |
parent | d52392b1a80458c0510810789c7db4a39b88022a (diff) |
ALSA: seq-oss: Initialize MIDI clients asynchronously
We've got bug reports that the module loading stuck on Debian system
with 3.10 kernel. The debugging session revealed that the initial
registration of OSS sequencer clients stuck at module loading time,
which involves again with request_module() at the init phase. This is
triggered only by special --install stuff Debian is using, but it's
still not good to have such loops.
As a workaround, call the registration part asynchronously. This is a
better approach irrespective of the hang fix, in anyway.
Reported-and-tested-by: Philipp Matthias Hahn <pmhahn@pmhahn.de>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/core/seq/oss/seq_oss_midi.c')
-rw-r--r-- | sound/core/seq/oss/seq_oss_midi.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sound/core/seq/oss/seq_oss_midi.c b/sound/core/seq/oss/seq_oss_midi.c index 677dc84590c7..862d84893ee8 100644 --- a/sound/core/seq/oss/seq_oss_midi.c +++ b/sound/core/seq/oss/seq_oss_midi.c @@ -72,7 +72,7 @@ static int send_midi_event(struct seq_oss_devinfo *dp, struct snd_seq_event *ev, * look up the existing ports * this looks a very exhausting job. */ -int __init +int snd_seq_oss_midi_lookup_ports(int client) { struct snd_seq_client_info *clinfo; |