ALSA: hda: Extend i915 component bind timeout
authorTakashi Iwai <tiwai@suse.de>
Mon, 25 Feb 2019 15:49:27 +0000 (16:49 +0100)
committerTakashi Iwai <tiwai@suse.de>
Mon, 25 Feb 2019 15:59:02 +0000 (16:59 +0100)
I set 10 seconds for the timeout of the i915 audio component binding
with a hope that recent machines are fast enough to handle all probe
tasks in that period, but I was too optimistic.  The binding may take
longer than that, and this caused a problem on the machine with both
audio and graphics driver modules loaded in parallel, as Paul Menzel
experienced.  This problem haven't hit so often just because the KMS
driver is loaded in initrd on most machines.

As a simple workaround, extend the timeout to 60 seconds.

Fixes: f9b54e1961c7 ("ALSA: hda/i915: Allow delayed i915 audio component binding")
Reported-by: Paul Menzel <pmenzel+alsa-devel@molgen.mpg.de>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/hda/hdac_i915.c

index 617ff1aa818f991a01091a9e03aa7952978c0b92..27eb0270a711f4db55511d6924db13656bc67276 100644 (file)
@@ -144,9 +144,9 @@ int snd_hdac_i915_init(struct hdac_bus *bus)
                return -ENODEV;
        if (!acomp->ops) {
                request_module("i915");
-               /* 10s timeout */
+               /* 60s timeout */
                wait_for_completion_timeout(&bind_complete,
-                                           msecs_to_jiffies(10 * 1000));
+                                           msecs_to_jiffies(60 * 1000));
        }
        if (!acomp->ops) {
                dev_info(bus->dev, "couldn't bind with audio component\n");