Lee Revell wrote: > On Sun, 2006-05-21 at 22:24 +0200, Rene Herman wrote: >> 2.6.17-rc2 (and 3 and 4) make my audio skip. Audio player is ogg123 >> running in an xterm. Browsing heavy sites (say, eBay) with Firefox >> 1.5.0.3 gets me audio underruns quickly. This does not happen on >> 2.6.17-rc1 and earlier (I just tested extensively; quite impossible to >> generate underruns on -rc1, quickly on -rc2 and later). >> >> It's not ALSA; reverted */sound/* from the rc1-rc2 interdiff. It's also >> not cfq-iosched.c. Any likely culprits in there? (I'm not a GIT user). >> > > I would suspect the scheduler interactivity patches. Please confirm > this by running ogg123 at nice -20 - do the underruns persist? They do persist. Thanks for the hint though -- "sched: fix interactive task starvation" is the culprit: http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5ce74abe788a26698876e66b9c9ce7e7acc25413 Added author and acked-by's to the CC. Mike, this patch is no good for me. Audio underruns galore, with only ogg123 and firefox (browsing the GIT tree online is also a nice trigger by the way). If I back it out, everything is fine for me again. Back-out attached as a patch against -rc4. This also backs out your follow-up "don't awaken RT tasks on expired array" as it was dependant: http://www.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8a5bc075b8d8cf7a87b3f08fad2fba0f5d13295e While looking at the patch I noticed there was +1 difference in the "limit" value between the macro and the static inline version of expired_starving() so I experimented with adding that back but that wasn't it unfortunately. I can test patches (preferably versus -rc4) although possibly not quickly. Rene.