aboutsummaryrefslogtreecommitdiffstats
path: root/sound/core/seq
diff options
context:
space:
mode:
authorJan Blunck <jblunck@suse.de>2008-02-14 22:34:28 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-15 00:13:32 -0500
commit0d63e4f9ea61df1d727bd52a174aba732e6e1853 (patch)
tree70bde9b57a6081fed6ac22acbfc3298d79f94362 /sound/core/seq
parent000cb48ee18165776b5a2beb72ed18f66bc61878 (diff)
Dont touch fs_struct in drivers
The sound drivers and the pnpbios core test for current->root != NULL. This test seems to be unnecessary since we always have rootfs mounted before initializing the drivers. Signed-off-by: Jan Blunck <jblunck@suse.de> Acked-by: Christoph Hellwig <hch@lst.de> Cc: Bjorn Helgaas <bjorn.helgaas@hp.com> Cc: Jaroslav Kysela <perex@suse.cz> Acked-by: Takashi Iwai <tiwai@suse.de> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'sound/core/seq')
-rw-r--r--sound/core/seq/seq_clientmgr.c4
-rw-r--r--sound/core/seq/seq_device.c3
2 files changed, 2 insertions, 5 deletions
diff --git a/sound/core/seq/seq_clientmgr.c b/sound/core/seq/seq_clientmgr.c
index f97c1ba43a2..47cfa5186e3 100644
--- a/sound/core/seq/seq_clientmgr.c
+++ b/sound/core/seq/seq_clientmgr.c
@@ -149,13 +149,13 @@ struct snd_seq_client *snd_seq_client_use_ptr(int clientid)
149 } 149 }
150 spin_unlock_irqrestore(&clients_lock, flags); 150 spin_unlock_irqrestore(&clients_lock, flags);
151#ifdef CONFIG_KMOD 151#ifdef CONFIG_KMOD
152 if (!in_interrupt() && current->fs->root) { 152 if (!in_interrupt()) {
153 static char client_requested[SNDRV_SEQ_GLOBAL_CLIENTS]; 153 static char client_requested[SNDRV_SEQ_GLOBAL_CLIENTS];
154 static char card_requested[SNDRV_CARDS]; 154 static char card_requested[SNDRV_CARDS];
155 if (clientid < SNDRV_SEQ_GLOBAL_CLIENTS) { 155 if (clientid < SNDRV_SEQ_GLOBAL_CLIENTS) {
156 int idx; 156 int idx;
157 157
158 if (! client_requested[clientid] && current->fs->root) { 158 if (!client_requested[clientid]) {
159 client_requested[clientid] = 1; 159 client_requested[clientid] = 1;
160 for (idx = 0; idx < 15; idx++) { 160 for (idx = 0; idx < 15; idx++) {
161 if (seq_client_load[idx] < 0) 161 if (seq_client_load[idx] < 0)
diff --git a/sound/core/seq/seq_device.c b/sound/core/seq/seq_device.c
index 155dc7da472..2f00ad28a2b 100644
--- a/sound/core/seq/seq_device.c
+++ b/sound/core/seq/seq_device.c
@@ -149,9 +149,6 @@ void snd_seq_device_load_drivers(void)
149 if (snd_seq_in_init) 149 if (snd_seq_in_init)
150 return; 150 return;
151 151
152 if (! current->fs->root)
153 return;
154
155 mutex_lock(&ops_mutex); 152 mutex_lock(&ops_mutex);
156 list_for_each_entry(ops, &opslist, list) { 153 list_for_each_entry(ops, &opslist, list) {
157 if (! (ops->driver & DRIVER_LOADED) && 154 if (! (ops->driver & DRIVER_LOADED) &&