Hi, Please consider applying. Description: Insert set_current_state() before schedule_timeout(). Without the insertion, schedule_timeout() returns immediately, resulting in an effective busy-wait. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer --- kj-domen/sound/isa/wavefront/wavefront_synth.c | 1 + 1 files changed, 1 insertion(+) diff -puN sound/isa/wavefront/wavefront_synth.c~set_current_state-sound_isa_wavefront_wavefront_synth sound/isa/wavefront/wavefront_synth.c --- kj/sound/isa/wavefront/wavefront_synth.c~set_current_state-sound_isa_wavefront_wavefront_synth 2005-01-23 00:24:28.000000000 +0100 +++ kj-domen/sound/isa/wavefront/wavefront_synth.c 2005-01-23 00:24:28.000000000 +0100 @@ -1751,6 +1751,7 @@ wavefront_should_cause_interrupt (snd_wa outb (val,port); spin_unlock_irq(&dev->irq_lock); while (1) { + set_current_state(TASK_INTERRUPTIBLE); if ((timeout = schedule_timeout(timeout)) == 0) return; if (dev->irq_ok) _