pcm: add a loop to snd_pcm_avail_delay() to avoid bogus delay values