aboutsummaryrefslogtreecommitdiffstats
path: root/sound/isa/wavefront/wavefront_synth.c
diff options
context:
space:
mode:
authorRene Herman <rene.herman>2007-09-18 12:10:49 -0400
committerJaroslav Kysela <perex@perex.cz>2007-10-16 10:50:54 -0400
commitd86d01935a4c4c818514d8c23579703abd768329 (patch)
tree6b0a1f67979fb5283511d6cf1776dca0c89507ba /sound/isa/wavefront/wavefront_synth.c
parentb44ef2f1544a0a8d3d8907890662924082d0f1fa (diff)
[ALSA] alsa-kernel: schedule_timeout() fixes
Fix schedule_timeout() use in alsa-kernel. Mostly just schedule_timeout(1) --> schedule_timeout_uninterruptible(1) The wavefront_synth one fixes the surrounding loop as well. In ymfpci_main, delete a superfluous set_current_state() and in soc/soc-dapm.c replace an _interruptible with _uninterruptible in some debug code; it's not waiting for signals. Signed-off-by: Rene Herman <rene.herman> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/isa/wavefront/wavefront_synth.c')
-rw-r--r--sound/isa/wavefront/wavefront_synth.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/sound/isa/wavefront/wavefront_synth.c b/sound/isa/wavefront/wavefront_synth.c
index 2da11e8337dd..a1ebb7c5c684 100644
--- a/sound/isa/wavefront/wavefront_synth.c
+++ b/sound/isa/wavefront/wavefront_synth.c
@@ -1768,7 +1768,7 @@ snd_wavefront_interrupt_bits (int irq)
1768 1768
1769static void __devinit 1769static void __devinit
1770wavefront_should_cause_interrupt (snd_wavefront_t *dev, 1770wavefront_should_cause_interrupt (snd_wavefront_t *dev,
1771 int val, int port, int timeout) 1771 int val, int port, unsigned long timeout)
1772 1772
1773{ 1773{
1774 wait_queue_t wait; 1774 wait_queue_t wait;
@@ -1779,11 +1779,9 @@ wavefront_should_cause_interrupt (snd_wavefront_t *dev,
1779 dev->irq_ok = 0; 1779 dev->irq_ok = 0;
1780 outb (val,port); 1780 outb (val,port);
1781 spin_unlock_irq(&dev->irq_lock); 1781 spin_unlock_irq(&dev->irq_lock);
1782 while (1) { 1782 while (!dev->irq_ok && time_before(jiffies, timeout)) {
1783 if ((timeout = schedule_timeout(timeout)) == 0) 1783 schedule_timeout_uninterruptible(1);
1784 return; 1784 barrier();
1785 if (dev->irq_ok)
1786 return;
1787 } 1785 }
1788} 1786}
1789 1787