On Tue, 27 Nov 2018, Takashi Iwai wrote: > On Tue, 27 Nov 2018 06:34:02 +0100, > Alexander Kappner wrote: >> >> >> >> >> On Mon, 26 Nov 2018, Takashi Iwai wrote: >> >>> On Mon, 26 Nov 2018 00:17:15 +0100, >>> Alexander Kappner wrote: >>>> >>>> My Lenovo P50 laptop has a BIOS option to disable the microphone. When >>>> this option gets chosen, the snd_hda_intel driver causes high CPU load >>>> on a single kworker thread, spinning on "process_unsol_events", and >>>> system >>>> instability. This behavior occurs from the time that the snd_hda_intel >>>> module is loaded, irrespective of whether anything is attempting to access >>>> the mic. The sound output still works. >>>> >>>> When in this state, the module cannot be removed cleanly; attempting to >>>> remove it (even without rmmod -f) triggers an oops. >>>> >>>> I have attached two exemplary dmesg outputs. Strangely enough, the exact >>>> location of the oops varies, but further up the call chain, I always see >>>> process_unsol_events. >>>> >>>> When the mic is not disabled in the BIOS, the module works stable, >>>> regardless whether or not the mic is muted in ALSA. >>>> >>>> I wasn't able to pinpoint the root cause. Any pointers on where to >>>> start? Much appreciated. >>> >>> Could you load snd-hda-intel driver with probe_only=1 option, and give >>> alsa-info.sh output (run it with --no-upload option)? This should >>> leave only the codec probing without configuring, so we can see the >>> codec widget contents and check the emulator. >>> >>> >>> thanks, >>> >>> Takashi >>> >> >> Hi Takashi, >> >> thank you for looking into this. Please see quoted below the output of >> alsa-info.sh (after "modprobe snd_hda_intel probe_only=1"). > > This is the state where BIOS disabled the mic, right? > It seems that BIOS doesn't change the pin configuration. The pin NID > 0x18 and 0x19 still show up as the mic jack and dock mic jack, as well > as the built-in mic on NID 0x12. And I couldn't see anything wrong in > the emulator with this input. > > When BIOS disables the mic, how is supposed? Does it disable all > mics, including built-in one? > > Could you check alsa-info.sh outputs on both BIOS mic disable and > enabled (but keep probe_only=1 option in both cases)? > > Also alsa-info.sh outputs on both cases without probe_only=1 would be > helpful, too. > > > thanks, > > Takashi > Hi Takashi, as requestd, please see attached four files, reflecting each combination of probe_only and mic enabled/disabled. To answer your question -- yes, the initial file I had sent reflected the mic disabled state. The BIOS option definitely disables the internal microphone. I could not test whether it would also disable other microphones (e.g. externally connected) since I do not have an external mic, but I will find out. Best regards Alexander