aboutsummaryrefslogtreecommitdiffstats
path: root/sound/usb/usbaudio.c
diff options
context:
space:
mode:
authorNishanth Aravamudan <nacc@us.ibm.com>2005-07-09 04:54:37 -0400
committerJaroslav Kysela <perex@suse.cz>2005-07-28 06:22:22 -0400
commitb27c187f95cd6c9f13f26a5088bea384ac557b45 (patch)
treec5d1ff785bda8fa11575ecb71453e53426b6e780 /sound/usb/usbaudio.c
parent989a0b248bbf32c89e60dc6f02219e446b320712 (diff)
[ALSA] Fix-up sleeping in sound/usb
USB generic driver,USB USX2Y Description: Fix-up sleeping in sound/usb. Replace big_mdelay() with msleep() to guarantee the task delays as expected. This also involved replacing/removing custom sleep functions. Patch is compile-tested. Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
Diffstat (limited to 'sound/usb/usbaudio.c')
-rw-r--r--sound/usb/usbaudio.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/usb/usbaudio.c b/sound/usb/usbaudio.c
index 3eaa08e3e6a6..f2b760d8d77e 100644
--- a/sound/usb/usbaudio.c
+++ b/sound/usb/usbaudio.c
@@ -792,7 +792,7 @@ static int start_urbs(snd_usb_substream_t *subs, snd_pcm_runtime_t *runtime)
792 */ 792 */
793static int wait_clear_urbs(snd_usb_substream_t *subs) 793static int wait_clear_urbs(snd_usb_substream_t *subs)
794{ 794{
795 int timeout = HZ; 795 unsigned long end_time = jiffies + msecs_to_jiffies(1000);
796 unsigned int i; 796 unsigned int i;
797 int alive; 797 int alive;
798 798
@@ -812,7 +812,7 @@ static int wait_clear_urbs(snd_usb_substream_t *subs)
812 break; 812 break;
813 set_current_state(TASK_UNINTERRUPTIBLE); 813 set_current_state(TASK_UNINTERRUPTIBLE);
814 schedule_timeout(1); 814 schedule_timeout(1);
815 } while (--timeout > 0); 815 } while (time_before(jiffies, end_time));
816 if (alive) 816 if (alive)
817 snd_printk(KERN_ERR "timeout: still %d active urbs..\n", alive); 817 snd_printk(KERN_ERR "timeout: still %d active urbs..\n", alive);
818 return 0; 818 return 0;