ALSA: HDA: Lessen CPU usage when waiting for chip to respond
authorDavid Henningsson <david.henningsson@canonical.com>
Fri, 4 May 2012 09:05:55 +0000 (11:05 +0200)
committerVarun Wadekar <vwadekar@nvidia.com>
Fri, 18 May 2012 10:36:19 +0000 (15:36 +0530)
commitd5502cba36710b36e8a18625a2f497a4f6008423
tree928303af06233b208f8d26058fbf252ef19c4c19
parent06f64e34ec1d48b183598e668fe549a5319e87cd
ALSA: HDA: Lessen CPU usage when waiting for chip to respond

When an IRQ for some reason gets lost, we wait up to a second using
udelay, which is CPU intensive. This patch improves the situation by
waiting about 30 ms in the CPU intensive mode, then stepping down to
using msleep(2) instead. In essence, we trade some granularity in
exchange for less CPU consumption when the waiting time is a bit longer.

As a result, PulseAudio should no longer be killed by the kernel
for taking up to much RT-prio CPU time. At least not for *this* reason.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
Tested-by: Arun Raghavan <arun.raghavan@collabora.co.uk>
Cc: <stable@kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_intel.c