Use wai_event_interruptible_timeout() instead of deprecated interruptible_sleep_on_timeout(). Patch is compile-tested. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer --- kj-domen/sound/core/rawmidi.c | 19 ++++++++----------- 1 files changed, 8 insertions(+), 11 deletions(-) diff -puN sound/core/rawmidi.c~wait_event_int_timeout-sound_core_rawmidi sound/core/rawmidi.c --- kj/sound/core/rawmidi.c~wait_event_int_timeout-sound_core_rawmidi 2005-03-02 10:44:58.000000000 +0100 +++ kj-domen/sound/core/rawmidi.c 2005-03-02 10:44:58.000000000 +0100 @@ -132,17 +132,14 @@ int snd_rawmidi_drain_output(snd_rawmidi err = 0; runtime->drain = 1; - while (runtime->avail < runtime->buffer_size) { - timeout = interruptible_sleep_on_timeout(&runtime->sleep, 10 * HZ); - if (signal_pending(current)) { - err = -ERESTARTSYS; - break; - } - if (runtime->avail < runtime->buffer_size && !timeout) { - snd_printk(KERN_WARNING "rawmidi drain error (avail = %li, buffer_size = %li)\n", (long)runtime->avail, (long)runtime->buffer_size); - err = -EIO; - break; - } + timeout = wait_event_interruptible_timeout(runtime->sleep, + (runtime->avail >= runtime->buffer_size), + 10*HZ); + if (signal_pending(current)) + err = -ERESTARTSYS; + if (runtime->avail < runtime->buffer_size && !timeout) { + snd_printk(KERN_WARNING "rawmidi drain error (avail = %li, buffer_size = %li)\n", (long)runtime->avail, (long)runtime->buffer_size); + err = -EIO; } runtime->drain = 0; if (err != -ERESTARTSYS) { _