ALSA: hda - Flush the pending probe work at remove
authorTakashi Iwai <tiwai@suse.de>
Wed, 20 Jan 2016 16:19:02 +0000 (17:19 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 20 Jan 2016 16:19:02 +0000 (17:19 +0100)
commitab3c347cfd0b0316a65a7f18fd094eeeba2ecc81
treedf2d842a0b8d74e4fb9cff67ca2d05103a8a3049
parent5fb31dad12f465c6c292898191d48d14829467d6
ALSA: hda - Flush the pending probe work at remove

As HD-audio driver does deferred probe internally via workqueue, the
driver might go into the mixed state doing both probe and remove when
the module gets unloaded during the probe work.  This eventually
triggers an Oops, unsurprisingly.

For avoiding this race, we just need to flush the pending probe work
explicitly before actually starting the resource release.

Bugzilla: https://bugzilla.opensuse.org/show_bug.cgi?id=960710
Cc: <stable@vger.kernel.org> # v3.17+
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_intel.c