From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id EC61EC43441 for ; Tue, 27 Nov 2018 13:21:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 9DF122086B for ; Tue, 27 Nov 2018 13:21:43 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9DF122086B Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=suse.de Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726923AbeK1ATg (ORCPT ); Tue, 27 Nov 2018 19:19:36 -0500 Received: from mx2.suse.de ([195.135.220.15]:56408 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726588AbeK1ATg (ORCPT ); Tue, 27 Nov 2018 19:19:36 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 4BE65AF64; Tue, 27 Nov 2018 13:21:40 +0000 (UTC) Date: Tue, 27 Nov 2018 14:21:40 +0100 Message-ID: From: Takashi Iwai To: Alexander Kappner Cc: Jim.Qu@amd.com, bhelgaas@google.com, guneshwor.o.singh@intel.com, perex@perex.cz, hdegoede@redhat.com, lukas@wunner.de, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org Subject: Re: [snd_hda_intel] snd_hda_intel causes high CPU lockup and system instability if mic disabled in BIOS on Lenovo P50 In-Reply-To: References: User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.8 Emacs/26 (x86_64-suse-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 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