From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755563Ab1IMIjR (ORCPT ); Tue, 13 Sep 2011 04:39:17 -0400 Received: from cantor2.suse.de ([195.135.220.15]:44177 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755006Ab1IMIjM (ORCPT ); Tue, 13 Sep 2011 04:39:12 -0400 Date: Tue, 13 Sep 2011 10:39:11 +0200 Message-ID: From: Takashi Iwai To: Francis Moreau Cc: Linux Kernel Mailing List , Linus Torvalds Subject: Re: 3.1-rc5 is the worst In-Reply-To: References: User-Agent: Wanderlust/2.15.6 (Almost Unreal) SEMI/1.14.6 (Maruoka) FLIM/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL/10.7 Emacs/23.3 (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=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org At Mon, 12 Sep 2011 16:25:44 +0200, Francis Moreau wrote: > > On Mon, Sep 12, 2011 at 3:14 PM, Francis Moreau wrote: > > Hello, > > > > On Mon, Sep 12, 2011 at 11:24 AM, Takashi Iwai wrote: > >> At Sat, 10 Sep 2011 11:57:06 +0200, > >> Francis Moreau wrote: > >>> > >>> Hello, > >>> > >>> Maybe the subject sounds rude so apologize since I just want to report > >>> that 3.1-rc5 gives me bad impression. > >>> > >>> Of course it's all about my hw support which seems to get some > >>> regressions (I attached lspci). > >>> > >>> 1/ I'm getting this now at each boot: > >>> > >>>   [   38.349671] hda_codec: too deep connection for 0x18 > >>>   [   38.349748] hda_codec: too deep connection for 0x18 > >>>   [   38.349842] hda_codec: too deep connection for 0x18 > >>>   [   38.349843] hda_codec: too deep connection for 0x18 > >>>   [   38.349844] hda_codec: too deep connection for 0x18 > >>>   [   38.349939] hda_codec: too deep connection for 0x18 > >>>   > >>> > >>> I've no idea what it does mean or it's simply a warning I can ignore > >>> (and it that case it would be nice to limit it at least) or if it's > >>> worse getting a fix before 3.1 is out would be great. > >> > >> Could you give alsa-info.sh outputs (run with --no-upload option) > >> for both working and non-working kernels?  lspci doesn't expose > >> anything about codecs and other details. > >> > > > > Here is the output from the working kernel (no "too deep connection > > ..." warnings). kernel is 2.6.39.4. > > > > I can't give the output for the non-working kernel since I can't > > reboot right now. I'll send it later. > > > > Ok here's the output for the bad one. > > Let me know if you want something else. Thanks! The patch below should fix the problem. Give it a try. Takashi --- From: Takashi Iwai Subject: [PATCH] ALSA: hda - Terminate the recursive connection search properly The recursive search of widget connections in snd_hda_get_conn_index() must be terminated at the pin and the audio-out widgets. Otherwise you'll get "too deep connection" warnings unnecessarily. Signed-off-by: Takashi Iwai --- sound/pci/hda/hda_codec.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c index 3e7850c..f3aefef 100644 --- a/sound/pci/hda/hda_codec.c +++ b/sound/pci/hda/hda_codec.c @@ -579,9 +579,13 @@ int snd_hda_get_conn_index(struct hda_codec *codec, hda_nid_t mux, return -1; } recursive++; - for (i = 0; i < nums; i++) + for (i = 0; i < nums; i++) { + unsigned int type = get_wcaps_type(get_wcaps(codec, conn[i])); + if (type == AC_WID_PIN || type == AC_WID_AUD_OUT) + continue; if (snd_hda_get_conn_index(codec, conn[i], nid, recursive) >= 0) return i; + } return -1; } EXPORT_SYMBOL_HDA(snd_hda_get_conn_index); -- 1.7.6.1